docker —— 容器管理

1.Docker 基础概念及命令

Docker 基本概念

Docker 三个重要概念:仓库 (Repository)、镜像 (image) 和 容器 (Container)

例:docker run --name MyWordPress --link db:mysql -p 8080:80 -d wordpress

Docker 指令的基本用法:
docker + 命令关键字(COMMAND) + 一系列的参数

基础命令

#守护进程的系统资源设置
docker info
#仓库的查询
docker search 镜像名称
#仓库的下载
docker pull 镜像名称
#镜像的查询
docker images 镜像名称
docker images 镜像名称:版本号/镜像ID号		#唯一索引查询
#镜像的删除
docker rmi 镜像名称
#镜像的强制删除,慎用,因为强制删掉镜像,容器也就不会正常运行
docker rmi -f 镜像名称/镜像名称:版本号		
#容器的删除
docker rm 容器名称
#容器的查询
docker ps
选项:-a	#查看所有
#容器的创建启动
docker run
#容器启动停止
docker start/stop

Docker 指令除了单条使用外,还支持赋值、解析变量、嵌套使用
docker rm -f $(docker ps -a -q)	
-q : 简要化输出

2.单一容器管理

​ 每个容器被创建后,都会分配一个 CONTAINER ID 作为容器的唯一标示,后续对容器的启动、停止、修改、删除等所有操作,都是通过 CONTAINER ID 来完成,偏向于数据库概念中的主键

#查看,所写的地方完全打开展示
$ docker ps --no-trunc 
#停止
$ docker stop/start CONTAINERID
#通过容器别名启动/停止
$ docker start/stop MywordPress
#查看容器所有基本信息
$ docker inspect 容器名称name
#查看容器日志
$ docker logs 容器名称name
#查看容器所占用的系统资源
$ docker stats 容器名称name
#容器执行命令
$ docker exec 容器名 容器内执行的命令
#登入容器的bash
$ docker exec -it 容器名 /bin/bash
i : 交互接口
t : tty接口
exit	#退出

run 基础命令

--restart=always		#容器的自动启动
-h x.xx.xx				#设置容器主机名
--dns xx.xx.xx.xx		#设置容器使用的 DNS 服务器
--dns-search			#DNS搜索设置
--add-host hostname:IP	 #注入 hostname <> IP 解析
--rm					#服务停止时自动删除

# 示例
1
[root@localhost ~]# docker run --name txb --restart=always -d 2c23e
85b52ab3dcdb9a3f93893eed1432d20ba75a232a61815c473f924b270f5a413d
[root@localhost ~]# docker ps
CONTAINER ID        IMAGE               COMMAND                  CREATED             STATUS              PORTS               NAMES
85b52ab3dcdb        2c23e               "/bin/sh -c 'tail ..."   10 seconds ago      Up 8 seconds                            txb
[root@localhost ~]# systemctl restart docker
systemctl restart docker.service 
[root@localhost ~]# docker ps
CONTAINER ID        IMAGE               COMMAND                  CREATED             STATUS              PORTS               NAMES
85b52ab3dcdb        2c23e               "/bin/sh -c 'tail ..."   2 minutes ago       Up 1 second                             txb

2
[root@localhost ~]# docker run --name lhl -h lili -d a05f
703c13c8d2465b07c3835c13223f4c6a8da818e117e1e81dc26ac9ecf05dda6a
[root@localhost ~]# docker exec -it lhl /bin/bash
root@lili:/var/www/html# hostname
lili
root@lili:/var/www/html# exit
exit

3
[root@localhost ~]# docker run --name lhllhl --add-host www.ll.com:192.168.1.111 -d a05f
d6a5a1900b7874096e7f28dc41c7e42f1156e4707d659d62eb31c5f77f8fe360
[root@localhost ~]# docker ps
CONTAINER ID        IMAGE               COMMAND                  CREATED             STATUS              PORTS               NAMES
d6a5a1900b78        a05f                "docker-entrypoint..."   10 seconds ago      Up 9 seconds        80/tcp              lhllhl
[root@localhost ~]# docker exec -it lhllhl /bin/bash
root@d6a5a1900b78:/var/www/html# cat /etc/hosts    
127.0.0.1	localhost
::1	localhost ip6-localhost ip6-loopback
fe00::0	ip6-localnet
ff00::0	ip6-mcastprefix
ff02::1	ip6-allnodes
ff02::2	ip6-allrouters
192.168.1.111	www.ll.com
172.17.0.5	d6a5a1900b78

4 --rm	#服务停止时自动删除
[root@localhost ~]# docker run --name aaaaa --rm -h www.txb.com -d a05f
26ccfa996c0b645691137b0e27f7fd541a740c2760a5375cfbac11defba0997d
[root@localhost ~]# docker ps
CONTAINER ID        IMAGE               COMMAND                  CREATED             STATUS              PORTS               NAMES
26ccfa996c0b        a05f                "docker-entrypoint..."   5 seconds ago       Up 4 seconds        80/tcp              aaaaa
[root@localhost ~]# docker stop $(docker ps -a -q)
26ccfa996c0b
[root@localhost ~]# docker ps -a
CONTAINER ID        IMAGE               COMMAND                  CREATED             STATUS                        PORTS               NAMES

3.多容器管理 —— Docker-Compose

docker 三剑客
docker-compose 基于 yaml 格式资源清单
docker-swarm
docker-machine

​ Docker 提倡理念是 “一个容器一个进程”,假设一个服务需要由多个进程组成,就需要多个容器组成一个系统,相互分工和配合对外提供完整服务
​ 比如:博客系统
​ 组件1:mariadb
​ 组件2:WordPress 的 apache web

​ 在启动容器时,同一台主机下如果两个容器之间需要由数据交流,使用 --link 选项建立两个容器之间的互联,前提是建立是 mariadb 已经开启
​ 比如:docker start db
​ docker sta

  • 2
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

打赏作者

攻城狮-00

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

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

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

打赏作者

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

抵扣说明:

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

余额充值