码迷,mamicode.com
首页 > 其他好文 > 详细

Docker 基本命令

时间:2019-09-21 23:41:24      阅读:102      评论:0      收藏:0      [点我收藏+]

标签:操作   基本命令   span   nod   src   bin   save   本地   echo   

1.搜索docker镜像

[root@node209 ~]# systemctl enable docker

 技术图片

2.下载docker镜像

docker pull docker.io/hello-world

3.查看docker镜像

docker images

docker image ls

4.运行docker镜像

docker run  IMAGE ID (镜像ID只需要前几个字符即可识别)

[root@node209 ~]# docker run fce

5.查看正在运行的docker容器

docker container ls

docker ps

6.查看已经运行过的容器

[root@node209 ~]# docker ps -a

 技术图片

7.运行一个在后台的任务

docker run -d centos /bin/sh -c "while true;do echo hello_docker; sleep 1;done"

 

# 容器是运行应用程序的,所以必须要先有一个操作系统为基础

# 运行一个在后台的任务

docker run -d centos /bin/sh -c "while true;do echo hello_docker; sleep 1;done"

     -d         # 后台运行容器

     /bin/sh    # 指定使用centosbash解释器

     -c         # 运行一段shell命令

    "while true;do echo hello_docker; sleep 1;done"   # linux后台,每秒中打印一个hello_docker

 

8.不间断打印容器的日志信息

docker  logs  -f  容器id        # 不间断打印容器的日志信息

9.进入运行的容器

docker exec -it  CONTAINER IDNAMES /bin/bash

docker exec -it 容器id

docker attach 容器id

如:

 技术图片

 

 

 技术图片

10.交互式的运行一个容器,且进入容器(也就是开启并进入一个新的容器)

docker run -it centos /bin/bash

假如你没有centos这个镜像的话,它会自动从网上下载下来并运行

11.删除docker镜像删除docker容器

# 删除docker镜像

docker rmi REPOSITORY/IMAGE ID

如果使用REPOSITORY最后后面跟版本

如果是镜像ID就不需要

# 删除docker容器

docker 容器id

如果正在运行最后先docker stop 容器ID

 技术图片

12.提交创建自定义的镜像(docker container commit)

例如在docker里面安装一个vim然后再生产新的一个镜像过程:

(1)我们进入交互式的centos容器中,发现没有vim命令

  docker run -it centos /bin/bash

(2)在当前容器中,安装一个vim

  yum install -y vim

(3)安装好vim之后,exit退出容器

  exit

(4)查看刚才安装好vim的容器记录

docker container ls -a

 技术图片

(5)提交这个容器,创建新的image,

根据上面截图获取容器ID: b93d3b3ad45a

docker commit b93d3b3ad45a  zero/centos-vim

# zero/centos-vim 为自定义的镜像名

 技术图片

6.查看镜像文件

[root@node209 ~]# docker images

REPOSITORY           TAG                 IMAGE ID            CREATED             SIZE

zero/centos-vim      latest              11c8cef9ccb0        12 seconds ago      326 MB

13.导出镜像

#  zero/centos-vim 为镜像名

docker save zero/centos-vim > /opt/mycentos.tar.gz

 技术图片

14.导入镜像

docker load < /opt/mycentos.tar.gz

 技术图片

15.启动容器与停止容器

docker stop 容器id

docker start 容器id

 技术图片

16.新建容器并且启动

新建一个容器并输出hehe

docker run centos /bin/echo "hehe"  # 这跟在本地直接执行 /bin/echo‘hehe‘

 技术图片

新建容器并自定义一个名字mycontainer

docker run --name mycontainer -it centos /bin/bash  # 启动一个bash终端,允许用户进行交互。

查看的时候运行容器中多了一个名为mycontainer的容器

技术图片

17.运行一个ubuntu容器

运行一个容器并进入终端

[root@node209 opt]# docker run -it centos /bin/bash

[root@4a96c773a085 /]#

18.查看所有的docker容器ID和镜像ID

# 查看所有的docker容器记录ID

docker ps -aq

# 查看所有的docker镜像ID

docker images -aq

# 删除所有的已经运行过的docker容器记录

docker rm `docker ps -aq`

# 删除所有的docker镜像

docker rmi `docker images -aq

19.查看指定容器的端口映射

docker port 容器ID

20.容器内的进程

docker top 容器id

 技术图片

21.外部访问容器

(1)在容器内跑一个app.py程序, 运行在5000端口

 

(2)使用-P参数随机映射一个端口到虚拟机上

docker run -d -P training/webapp python app.py

?    -P 参数会随机映射端口到容器开放的网络端口

?    如果本地没有这个镜像,docker run会自动为我们下载镜像然后运行

 技术图片

这边随机映射了32768端口

 技术图片

(3)使用-p参数自定义一个端口到虚拟机上, 如9000端口

docker run -d -p 9000:5000 training/webapp python app.py

(4)我们可以通过虚拟机的IP 加端口9000进行访问

 技术图片

 

Docker 基本命令

标签:操作   基本命令   span   nod   src   bin   save   本地   echo   

原文地址:https://www.cnblogs.com/hszstudypy/p/11565231.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!