基于centos7完成docker服务的一些基础操作

目录

要求完成

具体操作

1.安装docker服务,配置镜像加速器

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

[3.基于下载的镜像创建两个容器 (容器名一个为自己名字全拼,一个为首名字字母)](#3.基于下载的镜像创建两个容器 (容器名一个为自己名字全拼,一个为首名字字母))

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

5.怎么查看正在运行的容器和所有容器?

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

7.怎么连接到运行的容器?

8.查看容器或镜像的内部信息?

9.如何查看所有镜像?


要求完成

1.安装docker服务,配置镜像加速器

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

3.基于下载的镜像创建两个容器 (容器名一个为自己名字全拼,一个为首名字字母)

4.容器的启动、 停止及重启操作

5.怎么查看正在运行的容器和所有容器?

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

7.怎么连接到运行的容器?

8.查看容器或镜像的内部信息?

9.如何查看所有镜像?

具体操作

1.安装docker服务,配置镜像加速器

使用yum进行安装指定版本

(1)添加docker-ce 源信息

复制代码
[root@localhost docker]#  wget -O /etc/yum.repos.d/docker-ce.repo https://mirrors.tuna.tsinghua.edu.cn/docker-ce/linux/centos/docker-ce.repo

(2)修改docker-ce 源

复制代码
[root@localhost docker]#  sed -i 's@download.docker.com@mirrors.tuna.tsinghua.edu.cn/docker-ce@g' /etc/yum.repos.d/docker-ce.repo

(3)更新并安装 Docker-CE

复制代码
#更新 yum 软件包索引
[root@localhost docker]# yum makecache fast
#列出可下载版本
[root@localhost docker]# yum list docker-ce.x86_64 --showduplicates | sort -r 
#选定指定版本下载 
[root@localhost docker]# yum install -y docker-ce-17.03.3.ce-1.el7

(4)配置镜像加速

Docker 从 Docker Hub 拉取镜像,因为是从国外获取,所以速度较慢,可以通过配置国内镜像源的方式,从国内获取镜像,提高拉取速度。

这里我使用的网易的开源镜像:http://hub-mirror.c.163.com/

复制代码
[root@localhost docker]# cd /etc/docker
[root@localhost docker]# vim daemon.json

[root@localhost docker]# cat daemon.json
{
  "registry-mirrors": ["http://hub-mirror.c.163.com", "https://docker.mirrors.ustc.edu.cn"]
}

(5)验证

复制代码
[root@localhost docker]# docker run hello-world

Hello from Docker!
This message shows that your installation appears to be working correctly.

To generate this message, Docker took the following steps:
 1. The Docker client contacted the Docker daemon.
 2. The Docker daemon pulled the "hello-world" image from the Docker Hub.
    (amd64)
 3. The Docker daemon created a new container from that image which runs the
    executable that produces the output you are currently reading.
 4. The Docker daemon streamed that output to the Docker client, which sent it
    to your terminal.

To try something more ambitious, you can run an Ubuntu container with:
 $ docker run -it ubuntu bash

Share images, automate workflows, and more with a free Docker ID:
 https://hub.docker.com/

For more examples and ideas, visit:
 https://docs.docker.com/get-started/

验证成功--出现"Hello from Docker!"

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

使用以下命令下载系统镜像:

复制代码
[root@localhost docker]# sudo docker pull ubuntu
[root@localhost docker]# sudo docker pull centos

3.基于下载的镜像创建两个容器 (容器名一个为自己名字全拼,一个为首名字字母)

有两种方式:

1.docker create 镜像名

2.docker run -it --name 容器名 镜像名

复制代码
[root@localhost docker]#docker run -it --name cwj ubuntu /bin/bash
[root@localhost docker]#docker run -it --name cwj ubuntu /bin/bash

4.容器的启动、 停止及重启操作

复制代码
[root@localhost docker]# docker start cwj
cwj
[root@localhost docker]# docker stop cwj

cwj
[root@localhost docker]# 
[root@localhost docker]# docker restart cwj
cwj

5.怎么查看正在运行的容器和所有容器?

查看正在运行的:docker ps

复制代码
[root@localhost docker]# sudo docker ps
CONTAINER ID   IMAGE     COMMAND       CREATED          STATUS          PORTS     NAMES
01254a43a26c   ubuntu    "/bin/bash"   4 minutes ago    Up 58 seconds             cwj
f4a130141d8b   centos    "/bin/bash"   10 minutes ago   Up 9 minutes              chen

查看所有的容器:加上 -a 参数

复制代码
[root@localhost docker]# sudo docker ps -a
CONTAINER ID   IMAGE         COMMAND       CREATED             STATUS                         PORTS     NAMES
01254a43a26c   ubuntu        "/bin/bash"   4 minutes ago       Up About a minute                        cwj
dd6b2ad0a0de   ubuntu        "/bin/bash"   9 minutes ago       Exited (0) 9 minutes ago                 naughty_austin
f4a130141d8b   centos        "/bin/bash"   11 minutes ago      Up 10 minutes                            chen
9496f74e1e8e   hello-world   "/hello"      46 minutes ago      Exited (0) 46 minutes ago                crazy_kowalevski
33e95bc8e4d8   hello-world   "/hello"      About an hour ago   Exited (0) About an hour ago             hopeful_goldwasser

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

1.使用Ctrl+D 退出容器

2.使用exit退出容器

7.怎么连接到运行的容器?

1.之前我所写的第二条创建容器的命令就是创建后开启并进入容器

2.docker exec -it 容器名

复制代码
[root@localhost docker]# docker exec -it cwj /bin/bash

8.查看容器或镜像的内部信息?

1.查看容器信息:sudo docker inspect 容器名

复制代码
[root@localhost docker]# sudo docker inspect cwj
[
    {
        "Id": "01254a43a26c0adebb7e7a0ffddc10e0308a6b1a8edfb72f09c4b713f4fb7674",
        "Created": "2023-08-10T02:34:54.747910372Z",
        "Path": "/bin/bash",
        "Args": [],
        "State": {
            "Status": "running",
            "Running": true,
            "Paused": false,
            "Restarting": false,
            "OOMKilled": false,
            "Dead": false,
            "Pid": 7097,
            "ExitCode": 0,
            "Error": "",
            "StartedAt": "2023-08-10T02:38:19.263058884Z",
            "FinishedAt": "2023-08-10T02:37:58.993591604Z"
        },
......
  • 查看镜像内部信息:sudo docker image inspect 镜像名

    [root@localhost docker]# docker image inspect ubuntu
    [
    {
    "Id": "sha256:01f29b872827fa6f9aed0ea0b2ede53aea4ad9d66c7920e81a8db6d1fd9ab7f9",
    "RepoTags": [
    "ubuntu:latest"
    ],
    "RepoDigests": [
    "ubuntu@sha256:ec050c32e4a6085b423d36ecd025c0d3ff00c38ab93a3d71a460ff1c44fa6d77"
    ],
    "Parent": "",
    "Comment": "",
    "Created": "2023-08-04T04:53:00.244301537Z",
    "Container": "822f331d59eb72d1131a8a5fcb2b935c8110114c22be26c8572d9881dcff31e0",
    "ContainerConfig": {
    "Hostname": "822f331d59eb",
    "Domainname": "",
    "User": "",
    "AttachStdin": false,
    "AttachStdout": false,
    "AttachStderr": false,
    "Tty": false,
    "OpenStdin": false,
    "StdinOnce": false
    ......

9.如何查看所有镜像?

复制代码
[root@localhost docker]# docker images
REPOSITORY    TAG       IMAGE ID       CREATED         SIZE
ubuntu        latest    01f29b872827   5 days ago      77.8MB
hello-world   latest    9c7a54a9a43c   3 months ago    13.3kB
centos        latest    5d0da3dc9764   23 months ago   231MB
相关推荐
ayaya_mana1 小时前
Linux告别搜索卡顿:解决“Argument list too long”与实现文件内容秒搜
linux·运维·list
❀͜͡傀儡师2 小时前
docker搭建Elasticsearch+Kafka+Logstash+Filebeat日志分析系统
elasticsearch·docker·kafka
Mr_Dwj2 小时前
【运维】Docker 入门
运维·docker·云原生·容器
奋斗的蛋黄2 小时前
CI/CD 全流程指南:从概念到落地的持续交付实践
运维·ci/cd·kubernetes
wanhengidc2 小时前
云手机是真实手机吗
运维·服务器·游戏·智能手机·云计算
wanhengidc2 小时前
云手机 服务器网络安全
运维·服务器·安全·web安全·智能手机·云计算
I · T · LUCKYBOOM3 小时前
构建软RAID磁盘阵列
linux·运维·服务器
l1l2x1x23 小时前
DNS配置作业
运维·服务器
wanhengidc4 小时前
云手机的核心价值
运维·游戏·智能手机·云计算
Lynnxiaowen4 小时前
今天我们开始学习ansible之playbook的简单运用
linux·运维·学习·云计算·ansible