Docker容器操作

Docker容器操作

1. 创建容器

# 可以使用docker create命令新建一个容器,例如:
$ docker create  -it --name test1 centos:latest
ab85dc9f67eb068b3d22fd30fa1893008d833664f169e71a04e96e26d1bd2f1
$ docker ps -a
CONTAINER ID        IMAGE               COMMAND             CREATED              STATUS              PORTS               NAMES
74e91a9acec6        centos:latest       "/bin/bash"         About a minute ago   Created                                 test1


-t 选项让Docker分配一个伪终端(pseudo-tty)并绑定到容器的标准输入上
-i 让容器的标准输入保持打开(即交互式) 还可以使用--name给容器起个形象的名称
--name 为容器分配一个名称

2. 启动容器

$ docker start test1 //开启容器
test1
root@nfs ~]# docker ps
CONTAINER ID        IMAGE               COMMAND             CREATED             STATUS              PORTS               NAMES
74e91a9acec6        centos:latest       "/bin/bash"         4 minutes ago       Up 10 seconds                           test1

$ docker stop test1 //关闭容器
test1
$ docker ps
CONTAINER ID        IMAGE               COMMAND             CREATED             STATUS              PORTS               NAMES

3. 新建并启动容器

//创建并启动但执行完命令后停止容器
$ docker run -it --name test3 centos:latest /bin/echo "Hello world"
Hello world

$ docker ps
CONTAINER ID        IMAGE               COMMAND             CREATED             STATUS              PORTS               NAMES

// 创建并启动后台运行
$ docker run -itd --name test4 centos:latest 
da1f85c9f2fee3144dfa837d5cfe635217f576063d950151e5263af40e99a2bb
$ docker ps
CONTAINER ID        IMAGE               COMMAND             CREATED             STATUS              PORTS               NAMES
da1f85c9f2fe        centos:latest       "/bin/bash"         3 seconds ago       Up 3 seconds                            test4

// 如果不想停止加 -d 参数

4. 进入容器

$ docker attach test
[root@f26665ae112d /]# 

1.docker attach 允许我们进入后台进程.
2.--sig-proxy=false 不使用容器转发信号,允许我们使用 ctrl -c 来退出,执行docker
ps查看在后台运行
但是使用 attach 命令有时候并不方便。当多个窗口同时 attach 到同一个容器的时候,所有窗口都会同步显示。当某个窗口因命令阻塞时,其他窗口也无法执行操作了。

# docker exec 
$ docker exec -it f60c227724c3 /bin/bash
[root@f60c227724c3 /]# 

5. 删除容器

# docker rm [容器 id/容器 name]


批量删除多个容器
$ docker ps -aq //显示所有容器id
f60c227724c3
8118535b9827
842035ef97a9
11315808b25e
6306a2d74820a
f26665ae112d
da1f85c9f2fe
b4ba768350c2

$ docker rm -f $(docker ps -a -q)
f60c227724c3
8118535b9827
6306a2d74820
$ docker ps -a
CONTAINER ID        IMAGE               COMMAND             CREATED             STATUS              PORTS               NAMES
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值