docker
安装和使用
安装window版本(需先开通虚拟化)
双击安装
打开cmd(最好是项目打包文件,可以单独创建一个)
基本组成
镜像
模板,创建容器的模板,类似于模板(class类)
容器
实例(具体做事的),一个容器运行一种服务,类似于实例(new class的结果)–简易版的linux(环境)
仓库
存放镜像的地方,类似于github放git代码
命令
登录命令
docker login -u xxx -p xxx harbor.ratutech.com
镜像命令
镜像列表
docker images
查询镜像
docker search 镜像
拉取镜像
docker pull 镜像(本地没有就会去dockerhub服务器拉取
提交镜像
docker push 镜像
构建镜像
docker build 镜像
运行镜像生成容器
docker run 镜像
停止镜像
docker stop 镜像
重启镜像
docker restart 镜像
删除镜像
docker rmi 镜像、镜像id
容器命令
容器列表
docker ps
退出容器
docker exit
启动容器
docker start 容器、容器id
停止容器
docker stop 容器、容器id
重启容器
docker restart 容器、容器id
强制停止容器
docker kill 容器、容器id
删除容器(停止后才能删除)
docker rm 容器、容器id
重新进入正在运行的容器
docker exec -it 容器id (用exit退出时,不会停止容器)
docker attach 容器id (用exit退出时,会停止容器)
创建新镜像
docker commit -m'备注' -a'作者' 容器id 镜像名称/tag版本号
Dockerfile
构建docker镜像的配置文件,如何构建镜像
- 编写dockerfile
- docker build 构建镜像
- docker run 执行镜像,生成容器实例
流程
编写执行规则(dockerfile),根据dockerfile清单,build创建docker镜像,拿着docker镜像 run,生成docker容器,可以在其他docker环境中执行
命令
FROM 镜像来源
MAINTAINER 姓名和邮箱
RUN 相当于shell/exec 命令----docker build的时候运行
EXPOSE 对外暴露端口
WORKIDR 指定登录容器后,容器的命令窗口位置(感觉前端一般不用)
ENV 环境变量,后续科在命令中使用 比如:ENV MYPATH /home/yj 那么MYPATH变量就是/home/yj
ADD 拷贝+解压
COPY 拷贝
CMD 容器启动后干的事情-----docker run 的时候运行