容器时代

docker container 容器管理命令

Linux · 11月14日 · 2019年

容器管理

  • 创建容器常用选项

短指令 长指令 描述
-i –interactive 交互式
-t –tty 分配一个为终端
-d –detach 运行容器到后台
-e 211;env 设置环境变量
-p –publish list 发布容器端口到主机
-P –publish-all 发布容器所有EXPOSE的端口到宿主机随机端口
R11;name 指定容器名称
-h -hostname 设置容器主机名
-ip 指定容器IP,只能用于自定义网络
–network 连接一个容器到网络
-mount 将文件系统附加到容
-v -vloume 绑定挂载一个卷
–restart 器推出重启策略,默认为no,可选【always|on-failure】

run -it子命令参数

短指令 长指令 描述
-i -memory 互式
-t -tty 分配一个为终端
-d ;detach 运行容器到后台

docker container run创建一个容器

[root@docker ~]# docker container run -it centos:7

[root@834bc184bfe1 /]# 

明:伪终端登陆centos容器,一旦推出并关闭。

 

docker container run -d运行容器到后台

[root@docker ~]# docker run -itd centos:7 bash

907c19c1bf8b707ce9481cbbf6eb7bc915c221718e39189846cddc6571a6e470
[root@docker ~]# docker ps -a
CONTAINER ID        IMAGE               COMMAND             CREATED             STATUS                      PORTS               NAMES
907c19c1bf8b        centos:7            "/bin/bash"         5 seconds ago       Exited (0) 5 seconds ago                        cocky_turing
834bc184bfe1        centos:7            "/bin/bash"         3 minutes ago       Exited (0) 26 seconds ago                       cool_rhodes

说明:创建一个容器后台运行,一个容器里必须有前台应用工作否则将退出,加入-itd创建一个伪终端运行容器bash 、/bin/bash。

-e 实验为容器加入环境变量a=123456

[root@elsati docker]# docker container run -itd -e a=123456 centos:7 bash

35545ce8de8340fa5698ff632cf4a66810842156a22733d6625ed5b6fe560804

进入容器并且验证

[root@elsati docker]# docker exec -it fervent_franklin bash


[root@35545ce8de83 /]# echo $a
123456

-p 映射物理机端口8080指向容器端口80

[root@elsati docker]# docker run -itd -p 8080:80 nginx:1.14

33eb25803fc0fdc12b21be222adc93df7e49a27aeaf9e3817faabc693559d2b5

[root@elsati docker]# docker container ps -a
CONTAINER ID        IMAGE               COMMAND                  CREATED             STATUS                      PORTS                  NAMES
33eb25803fc0        nginx:1.14          "nginx -g 'daemon of…"   7 seconds ago       Up 5 seconds                0.0.0.0:8080->80/tcp   practical_colden

-P 映射随机端口号

[root@elsati ~]# docker run -itd -P nginx:1.14

7d2380d689458c5d2c5cae3b9d16b5ace18f5ffbaf28dac76591f056b6d0bc5b

–name 为创建的容器指定名称

[root@elsati ~]#docker run -itd –name web002 centos:7

3aa1bfc1899cb6e21bead11ecf54d27e0c6a62f900d7df67b19915a6eed94b9e
[root@elsati ~]# docker container ps -a
CONTAINER ID        IMAGE               COMMAND                  CREATED             STATUS                      PORTS                   NAMES
3aa1bfc1899c        centos:7            "/bin/bash"              26 seconds ago      Up 25 seconds                                       web002

-h 为容器内设置主机名称

[root@elsati ~]# docker run -itd –name web003 -h web002 centos:7

 1868b318866f73224725795037532b91b1bca71b9185e8801f5ca947b2e227c3
[root@elsati ~]# docker exec -it web00
web002  web003  
[root@elsati ~]# docker exec -it web003 bash
[root@web002 /]# 

 

–restart 为创建容器设置开机启动

[root@elsati ~]# docker run -itd -p 28:22 --name web201 --restart always centos:7

42b94791ed9292dda6d08b551fd70cc5f2ca3f4b19da9220ec2856ca0cbce83d

–add-host 映射ip设置方法

docker run -it --name lnmp_01 --add-host=www.gylunx.cn:192.168.254.141 centos:7

 

 ;

0 条回应