DockerFile案例

DockerFile案例

案例1:自定義鏡像mycentos

一、在Centos7宿主機上啓用ip轉發功能html

# Avoid WARNING: IPv4 forwarding is disabled. Networking will not work.
echo "net.ipv4.ip_forward=1" >> /etc/sysctl.conf
systemctl restart network

二、編寫DockerFile文件:vim Dockerfilejava

# 查詢centos鏡像版本:https://hub.docker.com/
FROM centos:7
# author<email>
MAINTAINER auth<auth@163.com>

ENV MYPATH /usr/local
WORKDIR $MYPATH

RUN yum -y install vim
RUN yum -y install net-tools

# 暴露端口
EXPOSE 80

CMD echo $MYPATH
CMD /bin/bash

三、構建mycentos鏡像(不要忘記最後的.)linux

docker build -f Dockerfile -t mycentos:1.0 .

四、經過mycentos鏡像生成容器,而且更改容器的yum源docker

# 建立並運行容器
docker run -it --name mycentos01 mycentos:1.0

# yum repo (163)
mv /etc/yum.repos.d/CentOS-Base.repo /etc/yum.repos.d/CentOS-Base.repo.backup
curl -o /etc/yum.repos.d/CentOS-Base.repo http://mirrors.163.com/.help/CentOS7-Base-163.repo
yum clean all && yum makecache

# ping test
ping www.baidu.com

案例2:帶有JDK的Centos7鏡像

一、下載JDK到宿主機工做目錄(如jdk-8u281-linux-x64.tar.gz)shell

  • 在linux中安裝jdk的教程(若不須要在宿主機上安裝jdk,能夠跳過)vim

  • Java官方文檔:https://docs.oracle.com/javase/8/docs/technotes/guides/install/install_overview.htmlcentos

    1. Change directory to the location where you would like the JDK to be installed, then move the .tar.gz archive file to the current directory.bash

    2. Unpack the archive file and install the JDK. ( tar zxvf jdk-8uversion-linux-x64.tar.gz )oracle

      tar zxvf jdk-8u281-linux-x64.tar.gzcurl

    3. The JDK files are installed in a directory called jdk1.8.0_version in the current directory.

      jdk1.8.0_281

    4. Delete the .tar.gz file if you want to save disk space.

二、編寫DockerFile文件:vim Dockerfile1

FROM centos:7
MAINTAINER auth<auth@163.com>

ENV MYPATH /usr/local
WORKDIR $MYPATH

RUN yum -y install vim
RUN yum -y install net-tools

# COPY:將宿主機中指定的文件複製到docker容器中指定的路徑  ADD:複製(如果壓縮文件會先解壓)
ADD jdk-8u281-linux-x64.tar.gz /usr/local
ENV JAVA_HOME /usr/local/jdk1.8.0_281
ENV CLASSPATH $JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar
ENV PATH $PATH:$JAVA_HOME/bin

EXPOSE 80

CMD echo $MYPATH
CMD /bin/bash

三、構建 jdk+centos7 鏡像(不要忘記最後的.)

docker build -f Dockerfile1 -t mycentos:2.0 .
相關文章
相關標籤/搜索