Docker容器学习:部署安装Docker&基础使用

目录

1、安装Docker-CE

1)参考阿里云的yum安装

2)二进制安装docker(推荐、生产环境使用较多)

3)配置Docker镜像加速

[2、下载系统镜像(Ubuntu、 centos)](#2、下载系统镜像(Ubuntu、 centos))

1)先查看我们所需的镜像有哪些版本。使用search命令!

2)下载镜像使用的是pull从网络的镜像仓库拉取到本地docker中!

3、查看本地的所有镜像

4、基于下载的镜像创建两个容器

[5、怎么退出容器: 两种方法分别实现?](#5、怎么退出容器: 两种方法分别实现?)

6、怎么查看正在运行的容器和所有容器?

[7、容器的启动、 停止及重启操作。](#7、容器的启动、 停止及重启操作。)

8、怎么连接到运行的容器?

9、查看容器或镜像的内部信息?


1、安装Docker-CE

1)参考阿里云的yum安装

  • 基于Centos7.9版本环境

step 1: 安装必要的一些系统工具

sudo yum install -y yum-utils device-mapper-persistent-data lvm2

Step 2: 添加软件源信息

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

Step 3

sudo sed -i 's+download.docker.com+mirrors.aliyun.com/docker-ce+' /etc/yum.repos.d/docker-ce.repo

Step 4: 更新并安装Docker-CE

sudo yum makecache fast

sudo yum -y install docker-ce

Step 4: 开启Docker服务

sudo service docker start

官方软件源默认启用了最新的软件

安装指定版本的docker-ce

Step 1: 查找Docker-CE的版本:

yum list docker-ce.x86_64 --showduplicates | sort -r
Loading mirror speeds from cached hostfile
Loaded plugins: branch, fastestmirror, langpacks
docker-ce.x86_64 17.03.1.ce-1.el7.centos docker-ce-stable
docker-ce.x86_64 17.03.1.ce-1.el7.centos @docker-ce-stable
docker-ce.x86_64 17.03.0.ce-1.el7.centos docker-ce-stable
Available Packages

Step2: 安装指定版本的Docker-CE: (VERSION例如上面的17.03.0.ce.1-1.el7.centos)

sudo yum -y install docker-ce-[VERSION]

2)二进制安装docker(推荐、生产环境使用较多)

到 ++https://download.docker.com/linux/static/stable/x86_64/++ 页面下载自己需要版本的发布包

1> 下载

复制代码
[root@node3 ~]# wget -c https://download.docker.com/linux/static/stable/x86_64/docker-20.10.17.tgz

2> 解压

复制代码
[root@node3 ~]# tar -xf docker-20.10.17.tgz -C /usr/local/

3> 命令软连接

复制代码
[root@node3 ~]# ln -sv /usr/local/docker/* /usr/bin/

4> 配置启动脚本

复制代码
[root@localhost ~]# vim /usr/lib/systemd/system/docker.service
[Unit]
Description=Docker Application Container Engine
Documentation=https://docs.docker.com
After=network-online.target firewalld.service
Wants=network-online.target
[Service]
Type=notify
ExecStart=/usr/bin/dockerd
ExecReload=/bin/kill -s HUP $MAINPID
LimitNOFILE=infinity
LimitNPROC=infinity
TimeoutStartSec=0
Delegate=yes
KillMode=process
Restart=on-failure
StartLimitBurst=3
StartLimitInterval=60s
[Install]
WantedBy=multi-user.target

5> 创建docker组

复制代码
[root@node3 ~]# groupadd -r docker

6> 启动服务

需要重新加载脚本然后启动

复制代码
[root@node3 ~]# systemctl daemon-reload 
[root@node3 ~]# systemctl start docker
[root@node3 ~]# systemctl enable --now docker

3)配置Docker镜像加速

  • 因为docker默认是从官方的Doccker Hub中下载,由于国内网络保护问题,我们使用国内的镜像源
  • 注册登录后选择:控制台 -> 搜索:容器镜像服务 -> 在最左列表中找到镜像加速,里面有详细讲解配置步骤方式。

sudo mkdir -p /etc/docker

sudo tee /etc/docker/daemon.json <<-'EOF'

{

"registry-mirrors": ["https://9qawopss.mirror.aliyuncs.com"]

}

EOF

sudo systemctl daemon-reload

sudo systemctl restart docker

2、下载系统镜像(Ubuntu、 centos)

1)先查看我们所需的镜像有哪些版本。使用search命令!

复制代码
[root@node3 ~]# docker search ubuntu
[root@node3 ~]# docker search centos
参数 说明
NAME 镜像名称
DESCRIPTION 镜像说明
STARS 点赞数量
OFFICIAL 是否是官方的
AUTOMATED 是否是自动构建的

2)下载镜像使用的是pull从网络的镜像仓库拉取到本地docker中!

复制代码
docker pull ubuntu:20.04
docker pull centos:7

3、查看本地的所有镜像

复制代码
[root@node3 docker]# docker images
REPOSITORY   TAG       IMAGE ID       CREATED         SIZE
ubuntu       20.04     6df894023726   3 weeks ago     72.8MB
centos       7         eeb6ee3f44bd   23 months ago   204MB

4、基于下载的镜像创建两个容器

创建一个后台运行的容器 - 需要run选项:

复制代码
[root@node3 docker]# docker run -d --name ubuntu ubuntu:20.04

 -d 选项创建的容器后台运行         --name 容器名

创建容器并进入到容器内部:

复制代码
[root@node3 docker]# docker run -it --name centos7 centos:7 /bin/sh
sh-4.2# 
-t 打开容器终端;-i 交互式访问;/bin/sh 进入容器必须要的解释器(shell)

5、怎么退出容器: 两种方法分别实现?

用-it创建容器后,不停止容器退出:Ctrl+Q+P

复制代码
[root@node3 docker]# docker ps
CONTAINER ID   IMAGE      COMMAND     CREATED          STATUS          PORTS     NAMES
334b759ef6d0   centos:7   "/bin/sh"   56 seconds ago   Up 55 seconds             centos7
[root@node3 docker]# docker kill centos7
centos7
[root@node3 docker]# docker ps
CONTAINER ID   IMAGE     COMMAND   CREATED   STATUS    PORTS     NAMES

用-it创建容器后,退出并停止容器:Ctrl+D 或 exit

复制代码
[root@node3 docker]# docker ps
CONTAINER ID   IMAGE     COMMAND   CREATED   STATUS    PORTS     NAMES

6、怎么查看正在运行的容器和所有容器?

docker ps 默认查看正在运行的容器:

复制代码
[root@node3 docker]# docker start centos7
centos7
[root@node3 docker]# docker ps
CONTAINER ID   IMAGE      COMMAND     CREATED         STATUS         PORTS     NAMES
334b759ef6d0   centos:7   "/bin/sh"   9 minutes ago   Up 3 seconds             centos7

查看所有的容器-需要用到ps选项:

复制代码
[root@node3 docker]# docker ps -a
CONTAINER ID   IMAGE          COMMAND       CREATED          STATUS                          PORTS     NAMES
334b759ef6d0   centos:7       "/bin/sh"     10 minutes ago   Up 42 seconds                             centos7
2992d992a21f   centos:7       "/bin/bash"   23 minutes ago   Exited (0) About a minute ago             centos
50144503b9d3   ubuntu:20.04   "/bin/bash"   24 minutes ago   Exited (0) 24 minutes ago                 ubuntu

7、容器的启动、 停止及重启操作。

#启动

docker start centos

#停止正在运行

docker stop centos

#stop 关闭运行的容器

#kill 杀死运行的容器

#重启

docker restart centos

8、怎么连接到运行的容器?

这里我们需要使用到exec选项

复制代码
[root@node3 ~]# docker ps 
CONTAINER ID   IMAGE      COMMAND     CREATED          STATUS         PORTS     NAMES
334b759ef6d0   centos:7   "/bin/sh"   18 minutes ago   Up 4 minutes             centos7
[root@node3 ~]# docker exec -it centos7 /bin/sh
sh-4.2# 

9、查看容器或镜像的内部信息?

需要inspect选项:

复制代码
[root@node3 ~]# docker inspect centos:7
相关推荐
IT成长日记3 小时前
【Docker基础】Docker数据持久化与卷(Volume)介绍
运维·docker·容器·数据持久化·volume·
热爱生活的猴子3 小时前
阿里云服务器正确配置 Docker 国内镜像的方法
服务器·阿里云·docker
物联网老王5 小时前
Ubuntu Linux Cursor 安装与使用一
linux·运维·ubuntu
艾伦_耶格宇7 小时前
【ACP】阿里云云计算高级运维工程师--ACP
运维·阿里云·云计算
FrankYoou7 小时前
Jenkins 与 GitLab CI/CD 的核心对比
java·docker
一位摩羯座DBA7 小时前
Redhat&Centos挂载镜像
linux·运维·centos
隆里卡那唔7 小时前
在dify中通过http请求neo4j时为什么需要将localhost变为host.docker.internal
http·docker·neo4j
疯子的模样7 小时前
Docker 安装 Neo4j 保姆级教程
docker·容器·neo4j
cui_win8 小时前
【网络】Linux 内核优化实战 - net.core.flow_limit_table_len
linux·运维·网络
风清再凯9 小时前
自动化工具ansible,以及playbook剧本
运维·自动化·ansible