三.docker容器的基本操作命令

来源:互联网 发布:python getopt函数 编辑:程序博客网 时间:2024/05/29 03:24

 

1.创建容器

[root@bogon Desktop]# docker create  -it centos:latest

49896b8dd3f01d4c7a9121234e174f2e49ffccc22ca35094e12e791f3a8bd043

[root@bogon Desktop]# docker  ps -a

CONTAINER ID        IMAGE               COMMAND                CREATED             STATUS                      PORTS               NAMES

49896b8dd3f0        centos:latest       "/bin/bash"            13 seconds ago                                                      furious_almeida     

5f3e0f1a69bb        centos:latest       "/bin/bash"            41 minutes ago      Exited (0) 41 minutes ago                       stoic_hopper        

98790c7a70e0        centos              "echo 'hello world'"   50 minutes ago      Exited (0) 50 minutes ago                       cranky_darwin    

 

2.新建启动容器

1:输出一个“hello world,容器 终止

[root@bogon Desktop]# docker run  centos /bin/echo  'hello world'

hello world

 

例二:启动一个bash终端允许用户进行交互

[root@bogon Desktop]# docker run -ti centos:latest /bin/bash

[root@0db7a0c21d03 /]# pwd

/

[root@0db7a0c21d03 /]# ls

anaconda-post.log  dev  home  lib64       media  opt   root  sbin  sys  usr

bin                etc  lib   lost+found  mnt    proc  run   srv   tmp  var

[root@0db7a0c21d03 /]# ps

   PID TTY          TIME CMD

     1 ?        00:00:00 bash

    14 ?        00:00:00 ps

[root@0db7a0c21d03 /]# exit

exit

3.守护态运行

在命令行中加入-d参数即可

[root@bogon Desktop]# docker  run -d  centos  /bin/bash  -c "while true; do echo hello world; sleep 1;done"

9424aaa4b045d4723681011d9e71f428498510edf28dde19e800ce5a590c942f

[root@bogon Desktop]# docker logs  942

hello world

hello world

4.终止容器

1)终止容器

[root@bogon Desktop]# docker stop 942

942

或者 docker kill  强制终止

[root@bogon Desktop]# docker ps

CONTAINER ID        IMAGE               COMMAND                CREATED             STATUS              PORTS               NAMES

0ab7e5097c43        centos              "/bin/bash -c 'while   45 hours ago    

2)观察处于终止状态的容器

[root@bogon Desktop]# docker ps -a -q

9424aaa4b045

0ab7e5097c43

3)启动容器

[root@bogon Desktop]# docker start 942

942

4)重启容器

[root@bogon Desktop]# docker restart 942

942

[root@bogon Desktop]# docker ps

CONTAINER ID        IMAGE               COMMAND                CREATED             STATUS              PORTS               NAMES

9424aaa4b045        centos              "/bin/bash -c 'while   45 hours ago        Up About a minute                       sad_galileo         

5.进入容器

1)attach  

[root@bogon Desktop]# docker attach backstabbing_bell

[root@7a6a037424ca /]#

2)Exec

 

[root@bogon Desktop]# docker exec -ti 9424aaa4b045   /bin/bash

[root@9424aaa4b045 /]#

3)nsenter工具

如果没有该包,请下载

下载地址:http://www.kernel.org/pub/linux/utils/util-linux/v2.24/util-linux-2.24.tar.gz

解压安装:

root@bogon software]# tar -zxf util-linux-2.24.tar.gz

[root@bogon software]# cd  util-linux-2.24

[root@bogon util-linux-2.24]# ls

ABOUT-NLS        config        Documentation  libmount     misc-utils        schedutils

aclocal.m4       config.h.in   fdisks  

[root@bogon util-linux-2.24]# ./configure  --without-ncurses

checking for gcc... gcc

checking whether

[root@bogon util-linux-2.24]# make  nsenter && cp nsenter /usr/local/bin/

  CC       sys-utils/nsenter.o

  CC       lib/libcommon_la-at.lo

6.删除容器:

docker  rm  容器id

参数选项:

 -f   强制删除一个正在运行的容器

 -l   删除容器的链接

 -v   删除容器挂载的数据卷

[root@bogon util-linux-2.24]# docker  rm  987

987

7.导入导出容器:

1)导出:

[root@bogon Desktop]# docker export  942  > test_for_942.tar

[root@bogon Desktop]# ls

redis-3.2.0  software  test_for_942.tar

2)导入:

[root@bogon Desktop]# cat test_for_942.tar | docker import - test/test:v1.0

f8fc16f51e05ec3fe24909dca9444dee01176c9a2b6d2efe460451a4a1a41ec7

0 0
原创粉丝点击