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’ ./
来源:oschina
链接:https://my.oschina.net/u/3966437/blog/4291245