FROM
基础镜像MAINTAINER
维护者ENV
环境变量
docker 复制文件 ADD COPY
ADD
可以获取网络地址以及解压功能COPY
本地文件
RUN
运行指令,每运行一条指令增加一层
EXPOSE 22
container暴露22端口
ENTRYPOINT
镜像启动后自动执行的命令
build
使用docker file生成docker镜像
// -t 起名字
// dockerfile_path如果为当前目录为则 ( . )docker build -t [registry_url/namespace/csphere/centos:7.1] [dockerfile_path]
docker images
查看镜像信息docker rmi
删除镜像docker images -q
批量删除镜像docker run image_name
用镜像 运行一个 container
1 | docker run -it:交互式 |
1 | docker run -d -p 80:80 --name wordpress -e WORDPRESS_DB_HOST=10.51.85.74 -e WORDPRESS_DB_USER=admin |
docker ps
查看运行容器docker ps -a
查看所有容器
ONBUILD
在下一个基于本镜像是执行的命令
docker exec -it container_name
交互式模式进入containerdocker exec -it testNode /bin/bash
VOLUME
宿主机目录映射container目录VOLUME ["/var/lib/mysql"]
docker rm
删除容器docker rm -f
强制移除容器docker ps -a -q
批量删除容器
docker stop container_id
停止容器
使用原有数据库,重新挂在到容器。按照原有命令即可挂载docker run -d -p 3306:3306 --name newdb -v /var/lib/docker/vfs/dir/mydata:/var/lib/mysql mysql:5.5
.dockerignore 文件
排除某些文件拷贝
ENTRYPOINT ["EXECUTEABLE", "param1", "param2"]
CMD ["EXECUTEABLE", "param1", "param2"]
CMD ["param1", "param2"]
为ENTRYPOINT指定参数CMD command param1 param2
以”bin/sh -c”方法执行命令
CMD指令 可覆盖
CMD["/bin/echo","This is test cmd"]
执行/bin/echodocker run -it sphere/cmd:0.1 /bin/bash
/bin/bash 覆盖 /bin/echo
ENTRYPOINT 覆盖指令需要通过 –entrypoint=来替换,方便调试错误的ENTRYPOINT指令
文章若有纰漏请大家补充指正,谢谢~~