首页 > 其他分享 >Docker命令

Docker命令

时间:2022-10-31 14:06:15浏览次数:60  
标签:容器 run -- id 命令 镜像 Docker docker


文章目录

  • ​​1.卸载已经安装的旧版本docker​​
  • ​​2.下载需要的安装包​​
  • ​​3.设置镜像仓库​​
  • ​​4.更新yum软件包索引​​
  • ​​5.安装docker相关的配置​​
  • ​​6.启动Docker​​
  • ​​7.查看镜像​​
  • ​​8.查看docker版本号​​
  • ​​9.设置docker开机自启​​
  • ​​10.卸载docker​​
  • ​​11.docker 系统信息 包括镜像和容器数量​​
  • ​​12. docker 帮助​​
  • ​​13.搜索docker镜像​​
  • ​​14.拉取docker镜像​​
  • ​​15.删除镜像​​
  • ​​16.运行镜像产生容器||启动容器​​
  • ​​16.1后台从容启动容器​​
  • ​​17.退出容器​​
  • ​​18.查看正在运行的容器​​
  • ​​19.删除容器​​
  • ​​20.启动和停止容器​​
  • ​​21.查看日志命令​​
  • ​​22.查看容器的进程命令 docker top 容器ID​​
  • ​​23.查看容器的元数据​​
  • ​​24.进入当前正在运行的容器​​
  • ​​25.拷贝容器的文件到主机中​​
  • ​​26.容器复制文件夹数据​​
  • ​​27.查看docker 状态 docker stats​​
  • ​​28.[图形化管理工具Portaniner安装](javascript:void(0))​​
  • ​​29. 提交新的镜像​​
  • ​​30.同步数据,数据卷使用​​
  • ​​31.Dockerfile介绍(手动打造镜像)​​
  • ​​32.DockerFile文件​​
  • ​​33.数据卷容器数据同步--volumes-from()​​
  • ​​34.查看镜像的构建步骤​​
  • ​​35.使用该Dockerfile构建镜像​​
  • ​​36.发布镜像Docker​​
  • ​​37.查看网络​​
  • ​​38.测试网络之间容器可以ping通​​
  • ​​39.语法 --link(需要重启)​​
  • ​​40.自定义网络创建​​

1.卸载已经安装的旧版本docker

yum remove docker \
docker-client \
docker-client-latest \
docker-common \
docker-latest \
docker-latest-logrotate \
docker-logrotate \
docker-engine

2.下载需要的安装包

yum install -y yum-utils

3.设置镜像仓库

yum-config-manager \
--add-repo \
https://download.docker.com/linux/centos/docker-ce.repo #国外的地址

# 设置阿里云的Docker镜像仓库
yum-config-manager \
--add-repo \
https://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo #国外的地址

4.更新yum软件包索引

yum makecache fast

5.安装docker相关的配置

docker-ce 是社区版,docker-ee 企业版

yum install docker-ce docker-ce-cli containerd.io

6.启动Docker

systemctl start docker

7.查看镜像

docker images
[root@luck ~]# docker images
REPOSITORY TAG IMAGE ID CREATED SIZE
hello-world latest bf756fb1ae65 11 months ago 13.3kB

#解释:
1.REPOSITORY 镜像的仓库源

2.TAG 镜像的标签

3.IMAGE ID 镜像的id

4.CREATED 镜像的创建时间

5.SIZE 镜像的大小


# 可选参数

-a/--all 列出所有镜像

-q/--quiet 只显示镜像的id

8.查看docker版本号

docker version

9.设置docker开机自启

ststemctl enable docker

10.卸载docker

# 1. 卸载依赖
yum remove docker-ce docker-ce-cli containerd.io
# 2. 删除资源 . /var/lib/docker是docker的默认工作路径
rm -rf /var/lib/docker

11.docker 系统信息 包括镜像和容器数量

docker info

12. docker 帮助

docker help

eg:
docker logs --help

13.搜索docker镜像

docker search 镜像名称
#搜索收藏数大于3000的镜像
[root@luck ~]# docker search mysql --filter=STARS=3000

14.拉取docker镜像

docker pull 镜像名称
docker image pull 镜像名称

docker pull 镜像名称:版本号

eg:docker pull mysql:5.7

eg:用完就删
docker run -it --rm tomcat:9.0

15.删除镜像

#1.删除指定的镜像id
[root@luck ~]# docker rmi -f 镜像id
#2.删除多个镜像id
[root@luck ~]# docker rmi -f 镜像id 镜像id 镜像id
#3.删除全部的镜像id
[root@luck ~]# docker rmi -f $(docker images -aq)

16.运行镜像产生容器||启动容器

docker run [可选参数] image

#参数说明
--name="名字" 指定容器名字
-d 后台方式运行
-it 使用交互方式运行,进入容器查看内容
-p 指定容器的端口 -p 8080:8080
(
-p ip:主机端口:容器端口 配置主机端口映射到容器端口
-p 主机端口:容器端口
-p 容器端口
)
-P 随机指定端口(大写的P)

16.1后台从容启动容器

docker run -d  --name =“自定义名称” -p 外网端口:内部端口  容器名称

17.退出容器

#exit 停止并退出容器(后台方式运行则仅退出)
#Ctrl+P+Q 不停止容器退出
[root@bd1b8900c547 /]# exit
exit
[root@iZwz99sm8v95sckz8bd2c4Z ~]#

18.查看正在运行的容器

#docker ps 
# 列出当前正在运行的容器
-a # 列出所有容器的运行记录
-n=? # 显示最近创建的n个容器
-q # 只显示容器的编号


[root@luck ~]# docker ps
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
[root@luck ~]# docker ps -a
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
bca129320bb5 centos "/bin/bash" 4 minutes ago Exited (0) 3 minutes ago optimistic_shtern
bd1b8900c547 centos "/bin/bash" 6 minutes ago Exited (0) 5 minutes ago cool_tesla
cf6adbf1b506 bf756fb1ae65 "/hello" 5 hours ago Exited (0) 5 hours ago optimistic_darwin

19.删除容器

docker rm 容器id                 #删除指定的容器,不能删除正在运行的容器,强制删除使用 rm -f
docker rm -f $(docker ps -aq) #删除所有的容器
docker ps -a -q|xargs docker rm #删除所有的容器

20.启动和停止容器

docker start 容器id          #启动容器
docker restart 容器id #重启容器
docker stop 容器id #停止当前运行的容器
docker kill 容器id #强制停止当前容器
#exit 停止并退出容器(后台方式运行则仅退出)
#Ctrl+P+Q 不停止容器退出
[root@bd1b8900c547 /]# exit
exit
[root@luck ~]#

21.查看日志命令

docker logs -f -t --tail 显示条数(可不写) 容器ID
常用:
docker logs -tf 容器id
docker logs --tail number 容器id #num为要显示的日志条数

22.查看容器的进程命令 docker top 容器ID

docker top 容器ID

23.查看容器的元数据

docker inspect 容器id

24.进入当前正在运行的容器

方法一(推荐):docker exec -it 容器ID /bin/bash
方法二:docker attach 容器ID

docker exec 进入容器后开启一个新的终端,可以在里面操作

docker attach 进入容器正在执行的终端,不会启动新的进程

25.拷贝容器的文件到主机中

docker cp 容器ID:容器内部路径:目的主机路径

26.容器复制文件夹数据

建立 webapps 文件夹

cp -r webapp.dist/* webapps

27.查看docker 状态 docker stats

docker stats -e

28.图形化管理工具Portaniner安装

docker run -d -p 8088:9000 --restart=always -v /var/run/docker.sock:/var/run/docker.sock --privileged=true portainer/portainer

29. 提交新的镜像

docker commit -m=“提交的描述信息”  -a="作者" 容器id 目标镜像名:[TAG]

30.同步数据,数据卷使用

docker run -it -v 主机目录:容器目录 镜像名 启动命令(/bin/bash)

eg:
docker run -d -p 6603:3306 -v /home/mysql/conf:/etc/mysql/conf.d -v /home/mysql/data:/var/lib/mysql -e MYSQL_ROOT_PASSWORD=123456 --name mysql01 mysql:5.7

-d:后台运行
-p:端口号设置
-v:数据卷使用
-v 容器内路径 //匿名挂载
-v 卷名:容器内路径 //具名挂载
-v /宿主机路径::容器内路径 //指定路径挂载
-v /宿主机路径::容器内路径:ro //指定路径挂载:ro只读
-v /宿主机路径::容器内路径:rw //指定路径挂载:可读可写
-e:配置
--name 起一个名字

31.Dockerfile介绍(手动打造镜像)

Docker镜像发布的步骤:
1、编写一个dockerfile文件

2、docker build 构建成为一个镜像

3、docker run 镜像

4、docker push 镜像(发布镜像到DockerHub、阿里云镜像仓库)

32.DockerFile文件

Dockerfile 一般分为四部分:基础镜像信息、维护者信息、镜像操作指令和容器启动时执行指令,’#’ 为 Dockerfile 中的注释。

关于DockerFile文件的脚本注意点有:

1、每个保留关键字(指令)都必须是大写字母

2、文件中的指令从上到下顺序执行,第一个指令必须是FROM

3、# 号表示注释

4、每一个指令都会创建提交一个新的镜像层,并提交!

33.数据卷容器数据同步–volumes-from()

docker run -it --name 容器自定义名字1 镜像名字:版本

docker run -it --name 容器自定义名字2 --volumes-from 容器自定义名字1 镜像名字:版本
docker run -it --name 容器自定义名字3 --volumes-from 容器自定义名字2 镜像名字:版本

Docker命令_数据

34.查看镜像的构建步骤

docker history 容器ID

35.使用该Dockerfile构建镜像

进入容器
docker build -t 容器名称:版本号

36.发布镜像Docker

https://hub.docker.com/ DockerHub
docker login -u 用户名
docker login --help
docker push 容器名称:版本号

37.查看网络

ip addr
查看网络id
docker network ls
docker network inspect 网络ID

查看绑定信息
docker exec -it tomcat03 cat /etc/hosts

38.测试网络之间容器可以ping通

docker exec -it 容器1 ping ip地址

39.语法 --link(需要重启)

docker run -d -P --name tomcat03 --link tomcat02 tomcat 
//这样3就可以联通2了,但是2不可以联通3,因为没有配置
docker exec -it tomcat03 ping tomcat02

40.自定义网络创建

第一步创建网络 
eg:docker network create --driver bridge --subnet 192.168.0.0/16 --gateway 192.168.0.1 mynet

eg:docker network create redis --subnet 172.13.0.0/16
第二步查看 docker network ls
docker network inspect mynet
eg:docker network inspect redis
第三步使用创建的网络docker run-d -P --name tomcat-net-01 --net mynet tomcat


标签:容器,run,--,id,命令,镜像,Docker,docker
From: https://blog.51cto.com/u_15854304/5809500

相关文章

  • Linux管道命令与shell编程(隐私版)
    管道相关命令目标​​cut​​​​sort​​​​wc​​​​uniq​​​​tee​​​​tr​​​​split​​​​awk​​​​sed​​准备工作vimscore.txtzhangsan689926lisi......
  • linux常用命令(一【公开版】)
    目录​​常用的:​​​​help:(2种)​​​​文件和目录常用命令​​​​LS:​​​​cd:​​​​touch:​​​​rm: ​​​​拷贝和移动文件:​​​​查看文件内容:​​​​c......
  • 防火墙重启导致docker容器无法访问
    关机启动,防火墙会自动启动导致docker无法访问,在bridge模式下,docker会默认写入iptables规则,防火墙重启或者状态有变动就会导致iptables规则失效,所以生产要不就是关闭防火墙......
  • 乘风破浪,遇见最佳跨平台跨终端框架.Net Core/.Net生态 - 适用于Entity Framework Core
    什么是EFCoreCLI适用于EntityFrameworkCore的命令行接口(CLI)工具可执行设计时开发任务。例如,可以创建迁移、应用迁移,并为基于现有数据库的模型生成代码。获取EFCore......
  • CentOS如何快速安装docker
    centos6.x$sudoyuminstallhttp://mirrors.yun-idc.com/epel/6/i386/epel-release-6-8.noarch.rpm$sudoyuminstalldocker-ioCentOS7.xCentOS7系统CentOS-Extras......
  • 命令行登录MySQL
    我用工具怎么连接不上mysql数据库的?不是提示了么:不是自己开的服务端不能连接。试着用mysql的命令行连接一下,根据相关的提示进行处理。一般要开放所需要的端口,设置用户的远......
  • mysql主从复制-docker
    1、拉取mysql:5.7镜像dockerpullmysql:5.72、创建主服务器配置文件mkdir-p/mydata/mysql-master/confvi/mydata/mysql-master/conf/my.cnfcat/mydata/mysql-......
  • Linux-文件与目录操作命令
    1.lsLinuxls(英文全拼:listdirectorycontents)命令用于显示指定工作目录下之内容(列出目前工作目录所含之文件及子目录)。1.1语法:ls[-alrtAFR][name...]......
  • CentOS7重启命令+关机命令
    [root@TS004~]#reboot  //重启命令[root@TS004~]# shutdown  // 重启命令[root@TS004~]#shutdown-rnow  //立即重启[root@TS004~]#shutdown-r+......
  • 常用DOS命令
    打开CMD的方式win+R输入cmd打开控制台(推荐)常用的DOS命令#盘符切换C:#查看当前目录下的所有文件dir#切换目录cdchangedirectorycd/dC:cd..#清理屏幕cls(......