一、Docker核心组件:
- Docker Client
Docker 提供命令行界面(CLI)工具,客户端
- Docker Daemon
Docker Daemon 是服务器组件,以 Linux 后台服务的方式运行,是 Docker 最核心的后台进程,我们也把它称为守护进程。
- Docker Image
镜像
- Docker Registry
仓库
- Docker Container
容器
二、常用命令
docker pull image_name 拉取镜像,默认保存到 /var/lib/docker
docker images
docker ps -a
docker start container_name/container_id 容器启动
docker restart container_name/container_id 重启
docker stop container_name/container_id 停止
docker attach container_name/container_id 进入容器
docker run -t -i container_name/container_id /bin/bash 运行这个容器中的镜像,并且调用镜像里面的 bash
三、Dockerfile
COPY 是用于复制本地主机的 <src> (为 Dockerfile 所在目录的相对路径)到容器中的 <dest>
WORKDIR 用于配合 RUN,CMD,ENTRYPOINT 命令设置当前工作路径。
RUN 用于容器内部执行命令。每个 RUN 命令相当于在原有的镜像基础上添加了一个改动层,原有的镜像不会有变化。
EXPOSE 命令用来指定对外开放的端口。一般格式为 EXPOSE <port> [<port>...]。
ENTRYPOINT 可以让你的容器表现得像一个可执行程序一样。一个 Dockerfile 中只能有一个 ENTRYPOINT,如果有多个,则最后一个生效。
- ENTRYPOINT ["executable", "param1", "param2"] :推荐使用的 Exec 形式。
- ENTRYPOINT command param1 param2 :Shell 形式。
CMD 命令用于启动容器时默认执行的命令,CMD 命令可以包含可执行文件,也可以不包含可执行文件。
- CMD ["executable","param1","param2"]:推荐使用的 exec 形式。
- CMD ["param1","param2"]:无可执行程序形式。
- CMD command param1 param2:Shell 形式。
https://www.cnblogs.com/ECJTUACM-873284962/p/9789130.html#autoid-0-0-9
使用jenkins,Docker实现持续部署 https://blog.51cto.com/dadonggg/1957691