客快物流大数据项目(十):Docker容器命令

举报
Lansonli 发表于 2021/12/29 00:21:16 2021/12/29
【摘要】 目录 Docker容器命令 一、查看容器 二、创建与启动容器 三、停止与启动容器 四、文件拷贝 五、目录挂载 六、查看容器ip地址 七、删除容器 Docker容器命令 有镜像才能创建容器,这是根本前提(下载一个CentOS镜像演示) 一、查看容器 查看正在运行的容器 docker ps 查看所有容器 do...

目录

Docker容器命令

一、查看容器

二、创建与启动容器

三、停止与启动容器

四、文件拷贝

五、目录挂载

六、查看容器ip地址

七、删除容器


Docker容器命令

有镜像才能创建容器,这是根本前提(下载一个CentOS镜像演示)

一、查看容器

  • 查看正在运行的容器
docker ps
 
  • 查看所有容器
docker ps -a
 
  • 查看最后一次运行的容器
docker ps -l
 
  • 查看停止的容器
docker ps -f status=exited
 

二、创建与启动容器

创建容器常用的参数说明

  • 创建容器的命令:
docker run
 
  • OPTIONS说明(常用):有些是一个减号,有些是两个减号

--name="容器新名字": 为容器指定一个名称;

-d: 在run后面加上参数-d,会创建一个守护式容器在后台运行(这样创建容器后不会自动登录容器,如果只加-i-t两个参数,创建后会自动进入容器),并返回容器ID,也即启动守护式容器;

-i:以交互模式运行容器,通常与 -t 同时使用;

-t:表示容器启动后会进入其命令行,为容器重新分配一个伪输入终端,通常与 -i 同时使用;

-p: 表示端口映射

有以下四种格式

ip:hostPort:containerPort

ip::containerPort

hostPort:containerPort

containerPort

前者表示宿主机端口,后者是容器内的映射端口,可以使用多个-p做多个端口映射

  • 启动交互式容器

docker run -it --name=centos 镜像名称:标签 /bin/bash

拉取centos:docker pull centos

docker run -it centos /bin/bash

这时通过ps命令查看,发现可以看到启动的容器,状态为启动状态

也可以这样写

docker run -it --name=mycentos centos:latest /bin/bash

/bin/bash的作用是因为docker后台必须运行一个进程,否则容器就会退出,在这里表示启动容器后启动bash。

  • 退出当前容器
exit
 
  • 守护式方式创建容器:

docker run -di --name=容器名称 镜像名称:标签

docker run -di --name=mycentos2 centos:latest

登录守护式容器方式:

docker exec -it 容器名称(或者容器id) /bin/bash

 什么是守护式容器

能够长期运行

没有交互式会话

适合运行应用程序和服务

三、停止与启动容器

  • 停止容器

docker stop 容器名称(或者容器id)

docker stop mycentos2

  • 启动容器

docker start 容器名称(或者容器id)

docker start mycentos2

  • 强制停止容器

docker kill 容器名称(或者容器id)

docker kill mycentos2

四、文件拷贝

  • 如果需要将文件拷贝到容器内可以使用cp命令

docker cp  /tmp/anaconda.log  mycentos2:/tmp

docker exec -it mycentos2 /bin/bash

  • 也可以将文件从容器内拷贝出来

docker cp 容器名称:容器目录 需要拷贝的文件或者目录

docker cp  mycentos2:/tmp /export/

五、​​​​​​​目录挂载

可以在创建容器的时候,将宿主机的目录和容器内的目录进行映射,这样就可以通过修改宿主机的某个目录的文件从而去影响容器

创建容器添加-v参数,后边为宿主机目录:容器目录,例如:

docker run -di -v /usr/local/myhtml:/usr/local/myhtml --name=mycentos3 centos:latest

docker exec -it mycentos3 /bin/bash

ls /usr/local/myhtml/

cp /export/tmp/anaconda.log /usr/local/myhtml/

docker exec -it mycentos3 /bin/bash

docker run -di --privileged=true -v /usr/local/myhtml:/usr/local/myhtml --name=mycentos3 centos:latest

如果共享的是多级的目录,可能会出现权限不足的提示。

这是因为Centos7中的安全模块selinux把权限禁掉了,我们需要添加参数--privileged=true来解决挂载的目录没有权限的问题

六、​​​​​​​查看容器ip地址

  • 可以通过以下命令查看容器运行的各种数据

docker inspect 容器名称(容器id)

docker inspect mycentos3

  • 也可以直接执行下面的命令直接输出IP地址

docker inspect --format=’{{.NetworkSettings.IPAddress}}’ 容器名称(容器id)

docker inspect --format=’{{.NetworkSettings.IPAddress}}’ mycentos3

七、​​​​​​​删除容器

  • 删除指定的容器:

docker rm 容器名称(容器ID)

docker stop mycentos3

docker rm mycentos3


  • 📢博客主页:https://lansonli.blog.csdn.net
  • 📢欢迎点赞 👍 收藏 ⭐留言 📝 如有错误敬请指正!
  • 📢本文由 Lansonli 原创,首发于 CSDN博客🙉
  • 📢大数据系列文章会每天更新,停下休息的时候不要忘了别人还在奔跑,希望大家抓紧时间学习,全力奔赴更美好的生活✨

文章来源: lansonli.blog.csdn.net,作者:Lansonli,版权归原作者所有,如需转载,请联系作者。

原文链接:lansonli.blog.csdn.net/article/details/122182177

【版权声明】本文为华为云社区用户转载文章,如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@huaweicloud.com
  • 点赞
  • 收藏
  • 关注作者

评论(0

0/1000
抱歉,系统识别当前为高风险访问,暂不支持该操作

全部回复

上滑加载中

设置昵称

在此一键设置昵称,即可参与社区互动!

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。