基于DockerFile制作镜像

前提是你 提交于 2020-08-15 03:06:05

DockerFile基本使用初体验(centos7 )

[root@localhost ~]# mkdir -p /opt/dockerfile

[root@localhost ~]# cd /opt/dockerfile/

[root@localhost ~]# mkdir -p /opt/dockerfile/centos7_sshd

dockerfile基础案例:

FROM centos:6.9

RUN mv /etc/yum.repos.d/*  /tmp

EXPOSE=22

CMD [“/usr/sbin/sshd”,"-D"]

 

解释:

FROM  基础镜像

    语法:

        1.centos:6.9

        2.centos@镜像哈希值

RUN 构建镜像过程中运行的命令

    语法:

        1.RUN cmd1&&cmd2      RUN mv /etc/yum.repos.d/*   /tmp  &&  mv /etc/yum.repos.d/*   /tmp

        2.RUN ["cmd","opt1","opt2"]     RUN ["mysqld", "--initialize-insecure", "--user=mysql", "--basedir=/usr/local/mysql", "--datadir=/data/mysql/data"]

 

EXPOSE :向外暴露端口

        EXPOSE 22

        EXPOSE 80

 

COPY index.php /var/www/html 拷贝宿主机的文件到docker 容器中的指定目录,可以支持通配符,如果复制的是目录,只会拷贝目录下的子文件

ADD bbs.tar.gz   /var/www

/html  拷贝宿主机的文件到docker 容器中,对于tar.gz文件自动解压

 

CMD 启动容器时第一进程的命令

ENTRYPOINT 和CMD对比,在启容器时,防止将第一进程被手工输入的命令替换掉,防止容器秒启秒停

ENV  设定变量

ENV CODEDIR=“/var/www/html”

ENV DATADIR="/data/mysql/data"

ADD bbs.tar.gz  ${CODEDIR}

 

使用dockerfile构建镜像

docker  build -t ‘oldguo/Centos7-SSHDv1.0’ ./

 

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!