前言
在公司使用配置流水线, 需要自定义自己的编译环境。 所以使用到了 docker 技术, 打成自己的镜像发布, 然后编译。 所以单独学习了下 docker 虚拟化容器技术, 并用来记录。 其中非常好的一个视频教程: 【狂神说Java】Docker最新超详细版教程通俗易懂, 推荐学习观看。
初步对 Docker 的认知一定要打成一致。 其中镜像为打包好的文件, 运行起来后称之为容器。
Docker 常用的命令
注意: 更多的命令及参数可以参考官网文档或者网上资源博客
Docker 命令全览如下图:

登录 Docker
1 2 3
| docker login -username=xxxx dockeservice
docker login -u xxx -p xxx
|
镜像相关
1 2 3 4
| docker rmi imageId
docker rmi $(docker images -aq)
|
- 运行镜像进入容器
1
| docker run -it imageId /bin/bash
|
容器相关
1 2 3 4
| docker exec -it id /bin/bash
docker attach id
|
1 2 3 4
| docker rm id
docker rm $(docker ps -aq)
|
制作镜像
commit
使用 commit 命令可以提交在本次容器中的修改, 生成一个新的镜像。
1
| docker commit -m '描述' -a '作者' 容器id 镜像名称:tag
|
dockerfile
编写 dockerfile 文件, 写明自己基于什么镜像, run 自己需要添加的新能力和配置, 最终生成新的镜像。 具体的 dockerfile 写法就不再介绍了, 可从其他网上去了解语法。
1
| docker build -f dockerfile -t imagename:tag .
|
发布镜像
1
| docker push imagename:tag
|
其他
端口映射
1
| docker run -it -p 宿主机端口号:容器端口号 镜像id /bin/bash
|
数据卷
1
| docker run -it -v 宿主地址:容器地址 镜像id /bin/bash
|