Docker命令


1.安装docker

# 1、yum包更新到最新
yum update
# 2、安装需要的软件包,yum-util提供yum-config-manager功能,另外两个是 devicemapper驱动依赖的
yum install -y yum-utils device-mapper-persistent-data lvm2
# 3、设置yum源
yum-config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repo
# 4、安装 docker,出现输入的界面都按y
yum install -y docker-ce
# 5、查看 docker版本,验证是否验证成功
docker -v
# 6.配置镜像加速器
# 阿里云官网-登录-控制台-搜索‘容器镜像服务’-镜像加速器-复制相关代码执行即可(生成配置文件路径:/etc/docker/daemon.json)

2.docker服务相关命令

# 1.启动docker
systemctl start docker
# 2.停止docker
systemctl stop docker
# 3.重启docker
systemctl restart docker
# 4.查看docker装状态
systemctl status docker
# 5.开机启动docker
systemctl enable docker

3.docker镜像相关命令

# 1.查看镜像
docker images
docker images -q #查看所有镜像的ID
# 2.搜索镜像(https://hub.docker.com)
docker search python
# 3.拉取镜像(不写版本号默认为latest-最新版)
docker pull python:3.8
# 4.删除镜像(可以通过镜像ID/名称进行删除)
docker rmi 镜像id #删除指定本地镜像
docker rmi `docker images -q` # 删除本地所有镜像

4.docker容器相关命令

# 1.查看容器
docker ps # 查看正在运行的容器
docker ps -a # 查看所有容器
# 2.创建容器(-i保持容器运行 -t开启新的终端 -d表示后台运行)
# -it创建的容器一般称为交互式容器,-id一般称为守护式容器
docker run -it --name=p1 python:3.8 /bin/bash
docker run -id --name=p2 python:3.8
# 3.进入容器
docker exec -it p1 /bin/bash
# 4.启动容器
docker start p1
# 5.停止容器
docker stop p1
# 6.删除容器(可以根据容器ID/容器名称进行删除)
docker rm 容器id # 删除单个容器
docker rm `docker ps -a` # 删除所有容器
# 7.查看容器信息
docker inspect 容器id

5.配置容器的数据卷

  • 数据卷:
    • 1.是宿主机种的一个目录或文件
    • 2.当容器目录和数据卷目录绑定后,对方的修改会立即同步
    • 3.一个数据卷可以被多个容器同时挂载
    • 4.一个容器也可以被挂载多个数据卷
  • 数据卷的作用:
    • 1.容器数据持久化
    • 2.客户端和容器数据交换
    • 3.容器间数据交换
  • 数据卷容器:
    • 1.创建一个容器,挂载一个目录,让其他容器继承自该容器(--volume-from)
    • 2.通过简单的方式实现数据卷配置
# 1.创建容器时,使用-v参数 设置数据卷
# 目录必须是绝对路径、如果目录不存在则创建、可以挂在多个数据卷
docker run ... -v 宿主机目录(文件):容器内目录(文件)
docker run -it --name=p1 -v /home/data:/root/data python:3.8 /bin/bash
# 2.一个容器挂载多个目录(\表示换行继续执行)
docker run -it --name=p2 \
-v /home/data2:/root/data2 \
-v /home/data3:/root/data3 \
python:3.8 /bin/bash
# 3.两个容器挂载同一个数据卷,实现两个容器数据交互
docker run -it --name=p3 -v /home/data:/root/data python:3.8 /bin/bash
docker run -it --name=p4 -v /home/data:/root/data python:3.8 /bin/bash
# 4.配置数据卷容器
# 创建启动p3数据卷容器,使用-v参数设置数据卷(/volume为容器目录)
docker run -it --name=p3 -v /volume python:3.8 /bin/bash
# 创建p1/p2容器,使用 --volumes-from参数设置数据卷
docker run -it --name=p1 --volumes-from c3 python:3.8 /bin/bash
docker run -it --name=p2 --volumes-from c3 python:3.8 /bin/bash

# 其他命令
touch t1.txt    #创建文件
echo t2-test > t2.txt   #创建并写入文件
mkdir data  #创建文件夹
ps -ef | grep python    #Linux查询正在运行的python程序
kill -9 进程id    # 停掉当前进程-9强制杀死该进程

6.docker应用部署

# 1.搜索并下载MySQL
docker search mysql
docker pull mysql:5.6
# 2.创建容器,设置端口映射、目录映射
# 在/root目录下创建mysql目录用于存储mysql数据信息
mkdir ~/mysql
cd ~/mysql
# 启动并配置mysql端口映射
docker run -id \
-p 3307:3306 \
--name=c_mysql \
-v $PWD/conf:/etc/mysql/conf.d \
-v $PWD/logs:/logs \
-v $PWD/data:/var/lib/mysql \
-e MYSQL_ROOT_PASSWORD=123456 \
mysql:5.6
# 3.进入容器
docker exec –it c_mysql /bin/bash
  • 映射参数说明:
    • -p 3307:3306:将容器的 3306 端口映射到宿主机的 3307 端口。
    • -v $PWD/conf:/etc/mysql/conf.d:将主机当前目录下的 conf/my.cnf 挂载到容器的 /etc/mysql/my.cnf。配置目录
    • -v $PWD/logs:/logs:将主机当前目录下的 logs 目录挂载到容器的 /logs。日志目录
    • -v $PWD/data:/var/lib/mysql :将主机当前目录下的data目录挂载到容器的 /var/lib/mysql 。数据目录
    • -e MYSQL_ROOT_PASSWORD=123456:初始化 root 用户的密码。

7.镜像制作

# 1.容器转换为镜像(目录挂载的文件不会被制作到镜像中)
docker commit 容器id 镜像名称:版本号 # 容器转换为镜像
docker save -o 压缩文件名称 镜像名称:版本号 # 镜像转换为压缩文件
docker load -i 压缩文件名称 # 压缩文件转换为镜像
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 204,590评论 6 478
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 86,808评论 2 381
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 151,151评论 0 337
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 54,779评论 1 277
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 63,773评论 5 367
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 48,656评论 1 281
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 38,022评论 3 398
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 36,678评论 0 258
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 41,038评论 1 299
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 35,659评论 2 321
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 37,756评论 1 330
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 33,411评论 4 321
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 39,005评论 3 307
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 29,973评论 0 19
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 31,203评论 1 260
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 45,053评论 2 350
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 42,495评论 2 343

推荐阅读更多精彩内容

  • 额外补充 查看容器运行状态 进入容器内进行命令行操作 在容器mynginx中开启一个交互模式的终端 容器生命周期管...
    tianmac阅读 4,502评论 1 2
  • 容器生命周期管理 run start/stop/restart rm pause/unpause create e...
    Al1i9at0r阅读 356评论 0 2
  • Docker是一个开放源代码软件项目,让应用程序部署在软件货柜下的工作可以自动化进行,借此在Linux操作系统上,...
    盖码范阅读 467评论 0 1
  • 列出docker镜像 docker image ls docker images docker image ls ...
    daqiaowijiu阅读 1,003评论 0 7
  • 一、容器生命周期管理 1、查看所有的容器:docker ps -a 2、启动容器: 启动已被停止的容器:docke...
    打工人打工魂阅读 237评论 0 0