基于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
相关推荐
you秀17 分钟前
linux中的iptables的简介与常用基础用法
linux·运维·服务器
画中有画1 小时前
使用AI来实现拼多多自动化运营脚本
运维·人工智能·自动化·ai编程·rpa·自动化脚本
vvilkim5 小时前
Java主流框架全解析:从企业级开发到云原生
java·运维·云原生
Wy_编程9 小时前
Linux-文本搜索工具grep
linux·运维·服务器
qq998999 小时前
AAA服务器技术
运维·服务器
Lovyk9 小时前
Linux Shell 常用操作与脚本示例详解
linux·运维·服务器
iCan_qi10 小时前
【Mac】【Minecraft】关于如何在Mac上搭建基岩版MC服务器的方法
运维·服务器·macos·minecraft
JohnYan12 小时前
工作笔记 - CentOS7环境运行Bun应用
javascript·后端·容器
ezreal_pan12 小时前
Kubernetes 负载均衡现象解析:为何同一批次请求集中于单个 Pod
运维·云原生·k8s·traefik
朱皮皮呀12 小时前
Spring Cloud——服务注册与服务发现原理与实现
运维·spring cloud·eureka·服务发现·php