Docker命令基础 简洁版本

本文涉及的产品
日志服务 SLS,月写入数据量 50GB 1个月
简介: 作者主页:https://www.couragesteak.com/

1 介绍

1.1 环境查看+安装

1、官方教程
2、确定为Centos7以上版本

# 系统内核是 3.10 以上的
[root@huawei ~]# uname -r
3.10.0-1160.45.1.el7.x86_64
cat /etc/os-release

3、yum安装gcc相关环境

yum -y install gcc
yum -y install gcc-c++

4、卸载旧版本

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

5、安装需要的软件包

yum install -y yum-utils

6、使用阿里云镜像

yum-config-manager \
    --add-repo \
    http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo 

7、更新yum软件包索引

yum makecache fast

8、安装docker相关的社区
docker-ce:社区
docker-ee:企业版 可以指定版本安装

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

9、启动docker

systemctl start docker
# 开机启动
systemctl enable docker

10、配置镜像加速器

阿里云:https://cr.console.aliyun.com/cn-hangzhou/instances/mirrors

sudo mkdir -p /etc/docker
sudo tee /etc/docker/daemon.json <<-'EOF'
{
  "registry-mirrors": ["https://q5vcymug.mirror.aliyuncs.com"]
}
EOF
sudo systemctl daemon-reload
sudo systemctl restart docker

其他源

{
  "registry-mirrors": [
    "https://9cpn8tt6.mirror.aliyuncs.com",
    "https://8bhew391.mirror.aliyuncs.com",
    "https://almtd3fa.mirror.aliyuncs.com",
    "https://hccwwfjl.mirror.aliyuncs.com",
    "https://registry.docker-cn.com",
    "http://hub-mirror.c.163.com"
  ]
}

1.2 常用命令

# 镜像操作
docker images            # 查看所有本地的主机上的镜像
docker images --help    # 镜像帮助
docker images -a
docker images -q

# 容器操作
# docker ps 命令
    # 列出当前正在运行的容器
-a  # 列出当前正在运行的容器+带出历史运行过的容器
-n=?    # 显示最近创建的容器
-q        # 只显示容器的编号

2 镜像命令

# 搜索镜像
docker search mysql

# 下载镜像
docker pull mysql
docker pull mysql:5.7

# 删除指定的镜像
docker rmi -f 容器删除多个镜像
# 删除多个镜像
docker rmi -f 镜像id 镜像id 镜像id
# 删除全部镜像
docker rmi $(docker images -aq)

# 查看镜像元数据
docker inspect 容器id

镜像加速器

阿里云:https://cr.console.aliyun.com/cn-hangzhou/instances/mirrors

sudo mkdir -p /etc/docker
sudo tee /etc/docker/daemon.json <<-'EOF'
{
  "registry-mirrors": ["https://q5vcymug.mirror.aliyuncs.com"]
}
EOF
sudo systemctl daemon-reload
sudo systemctl restart docker

使用镜像,启动一个容器

交互方式,启动centos

docker run -it centos-base:1.0
docker run -d --name nginx-test nginx
docker run -it centos-base01 /bin/bash
docker run -d -P --name centos-base01 centos-base /bin/bash

3 容器命令

# 启动和停止容器
docker start 容器id        # 启动容器
docker restart 容器id        # 重启容器
docker stop 容器id        # 停止当前正在运行的容器
docker kill 容器id        # 强制停止当前容器

# 进入正在运行容器
# 格式:docker exec -it 容器id bashShell
docker exec -it e40bd5ee5f42 /bin/bash
# 进入容器 显示正在执行当前的代码
docker attach 容器id    

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

4 容器+主机文件操作 复制

容器 ---> 宿主机

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

宿主机 ---> 容器

docker cp 宿主机文件路径  镜像名称:镜像中文件存放路径

5 查看容器进程

# 命令 docker top 容器id
docker top b737e6d65198

6 查看日志

# 显示日志
-tf        # 显示日志
--tail number    # 要显示日志条数
docker logs -tf --tail 10 容器id

7 commit镜像

# 命令和git原理类似docker commit -m="提交的描述信息" -a="作者" 容器id 目标镜像名:[TAG]docker commit -a="有勇气的牛排" -m="add webapps app" 48629b5a69d2 tomcat02:1.0

8 DockerFile

关键字

FROM            # 基础镜像,一切从这里开始构建 centosMAINTAINER        # 镜像是谁写的:姓名+邮箱RUN                # 镜像构建的时候需要运行的命令ADD                # 步骤:tomcat镜像,这个tomcat压缩包,添加内容WORKDIR            # 镜像的工作目录VOLUME            # 挂载的目录EXPOSE            # 暴露端口配置CMD                # 指定这个容器启动的时候运行的命令,只有最后一个会生效,可被替代ENTRYPOINT        # 指定这个容器启动的时候要运行的命令,可以追加命令ONBUILD            # 当构建一个被继承 DokcerFile 这个时候就会运行 ONBUILD 的指令,触发指令COPY            # 类似ADD,将我们文件拷贝到镜像中ENV                # 构建的时候,设置环境变量
实战测试构建自己的centos
# 1.编写dockerfile的文件[root@vitloud dokcerfile]# cat mydockerfile-centosFROM centosMAINTAINER vitcloud<vitcluod@163.com>ENV MYPATH /usr/localWORKDIR $MYPATHRUN yum -y install vimRUN yum -y install net-toolsEXPOSE 80CMD echo $MYPATHCMD echo "---end---"CMD /bin/bash# 2.构建docker build -f mydockerfile-centos -t mycentos:0.1 .# 3.运行docker run -it mycentos:0.1

8.1 tomcat案例

# 启动容器docker run -it -p 8080:8080 tomcat

学习地址:
https://www.bilibili.com/video/BV1og4y1q7M4

相关实践学习
日志服务之使用Nginx模式采集日志
本文介绍如何通过日志服务控制台创建Nginx模式的Logtail配置快速采集Nginx日志并进行多维度分析。
相关文章
|
15天前
|
机器人 网络安全 数据安全/隐私保护
autMan奥特曼机器人-对接Docker版本NTQQ详细教程
本文介绍了如何在服务器上搭建NTQQ机器人,通过官方NTQQ对接各框架,实现QQ登录的稳定运行。文章提到了需要准备一台服务器和相应的软件,并详细描述了通过SSH链接服务器、创建文件夹和配置文件、编辑配置文件地址端口、运行容器等步骤。同时,文章还介绍了VNC连接的使用和配置,以及使用watchtower进行NTQQ的更新。文章总结起来就是在服务器上搭建NTQQ机器人,实现QQ登录的稳定性和自动登录功能,同时提供了更新和维护的方法。
47 3
autMan奥特曼机器人-对接Docker版本NTQQ详细教程
|
16天前
|
安全 Docker 容器
|
16天前
|
网络安全 数据安全/隐私保护 Docker
|
3天前
|
Java 应用服务中间件 Linux
【Docker容器化技术】docker安装与部署、常用命令、容器数据卷、应用部署实战、Dockerfile、服务编排docker-compose、私有仓库
本文主要讲解了Docker的安装与部署、常用命令、容器数据卷、应用部署实战、Dockerfile、服务编排docker-compose、私有仓库以及Docker容器虚拟化与传统虚拟机比较。
【Docker容器化技术】docker安装与部署、常用命令、容器数据卷、应用部署实战、Dockerfile、服务编排docker-compose、私有仓库
|
14天前
|
存储 监控 安全
|
2月前
|
Linux Docker 容器
Docker操作 :容器命令
Docker操作 (四)
|
14天前
|
存储 关系型数据库 MySQL
|
22天前
|
网络协议 Docker 容器
docker pull命令拉取镜像失败的解决方案
docker pull命令拉取镜像失败的解决方案
486 0
|
24天前
|
安全 网络安全 开发者
Docker学习笔记(一):Docker命令总结
本文介绍了Docker的基本概念、优点以及常用命令。Docker是一个开源的应用容器引擎,它通过容器打包应用程序及其依赖项,实现快速部署和迁移。主要优点包括轻量级、可移植性、易于管理、安全性和开源性。文章还区分了镜像和容器的概念,并提供了构建镜像、查看容器、运行容器、停止和删除容器等常用Docker命令的示例。
115 0
|
30天前
|
Linux 网络安全 Docker
安装后无法使用 Docker 命令
【10月更文挑战第3天】
119 2