docker命令记录以及使用场景

删除所有docker容器:docker rm -f $(docker ps -q -a)
Namespace 对进程、网络、用户等资源隔离,在容器里看不到宿主机的进程
进入docker:docker exec -it ID sh

docker的应用场景
场景一:
1:单项目部署,可以把环境pull到容器中,一次构建,多次部署
2:整套项目部署,如果公司有一个项目要卖给多个客户,可以把项目打包起来,实现一键部署
3:开源技术调研,docker可快速下载镜像,快速运行。

场景二:
在windows的环境部署下,经常在本地没问题,但是部署到服务器就出问题了,这个问题非常常见。用docker可以避免这个问题。

场景三:
微服务,一个容器一个服务

场景四:
持续集成,可以快速的测试,上线。

docker pull nginx 下载镜像
docker image rm nginx 删除nginx镜像
docker tag nginx nginx:v1 给nginx镜像做标记,引用原Nginx镜像的ID
docker container run -itd --name nx nginx 运行一个容器,命名为nx
docker export 309be2be05e4 > nginx.tar 导出一个正在运行的容器
docker import nginx.tar nginxs:self 导入镜像并加tag为self
docker save nginx> nginx.tar 导出一个容器
docker container attach nx 进入nx容器中  不常用,退出会关闭容器
docker exec -it nx /bin/bash 进入nx容器中,退出容器不关闭容器
docker container run -itd -p 8080:80 --name nginx01 nginx 创建一个容器nginx01,-p把宿主机的8080映射到容器的80端口
docker container run -itd -p 8081:80 --name nginx02  --restart=always nginx 创建一个容器nginx02,--restart=always服务器挂了会重启容器
docker container run -itd -p 8082:80 --name nginx03  --cpus 1 nginx 创建一个容器nginx03,--cpus 1 如果宿主机有双核,只能使用单核CPU资源
docker container run -itd -p 8083:80 --name nginx04  --memory 512m nginx 创建一个容器nginx04,--memory 512m 使用宿主机的512m内存,虚拟内存默认为512的两倍
docker container stats nginx04        可以查看容器的资源使用率 
/usr/local/tomcat/webapps/
启动docker
systemctl start docker

卸载docker
yum remove docker-ce
rm -rf /var/lib/docker


镜像库地址;
https://hub.docker.com/explore


默认是国外的源,下载会慢,建议配置国内镜像仓库:
# vi /etc/docker/daemon.json
{
"registry-mirrors": [ "https://registry.docker-cn.com"]
}
之后 重启docket systemctl restart docker
再使用命令ps -ef |grep docker看下是否有docker进程,有的话说明启动成功

docket的存储驱动路径
/var/lib/docker
存储驱动的作用就是容器层和镜像层的逻辑运行速度,所以存储驱动好的话效率很重要。


容器管理
docker container inspect ID 查看容器详细信息

Volume
管理卷:
# docker volume create nginx-vol 创建一个数据卷
# docker volume ls        数据卷列表
# docker volume inspect nginx-vol 查看数据库详细信息
用 卷 创建一个容器:
# docker run -d -it --name=nginx-test --mount src=nginx-vol,dst=/usr/share/nginx/html nginx 创建nginx-test容器,挂载到容器目录dst
# docker run -d -it --name=nginx-test -v nginx-vol:/usr/share/nginx/html nginx
清理:
# docker container stop nginx-test 停止容器
# docker container rm nginx-test   删除容器
# docker volume rm nginx-vol      删除数据卷
注意:
1. 如果没有指定卷,自动创建。
2. 建议使用—mount,更通用。


Bind Mounts
用卷创建 一个容器:
# docker run -d -it --name=nginx-test --mount type=bind,src=/app/wwwroot,dst=/usr/share/nginx/html nginx 创建nginx-test容器,type:bind的src可以是宿主机是任意目录,挂载到容器目录dst
# docker run -d -it --name=nginx-test -v /app/wwwroot:/usr/share/nginx/html nginx
验证绑定:
# docker inspect nginx-test
清理:
# docker container stop nginx-test
# docker container rm nginx-test


docker build -t tomcat:server -f DockerfileEurekaServer . 构建镜像
docker run -d -it --name=eureka-server -p 8080:8080  tomcat:server 启动服务容器
docker run -d -it --name=eureka-client1 -p 8888:8888  tomcat:client1 启动逻辑服1容器
docker run -d -it --name=eureka-client2 -p 8989:8989  tomcat:client2 启动逻辑服2容器
docker run -d -it --name=eureka-zuul -p 5000:5000  tomcat:zuul 启动网关容器


 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

紫川琴秀

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值