《‘狂’人日记》---Docker从入门到进阶之基础操作(三)

简介: Docker 是一个开源的应用容器引擎,让开发者可以打包他们的应用以及依赖包到一个可移植的容器中,然后发布到任何流行的Linux机器上,也可以实现虚拟化,容器是完全使用沙箱机制,相互之间不会有任何接口。 本篇文章将向您展示常用的Docker技术,让您快速入门

前两章介绍了Docker的容器和镜像部分,那么这一章就开始介绍仓库

1.仓库

仓库(Repository)是集中存放镜像的地方。 一个容易混淆的概念是注册服务器(Registry)。实际上注册服务器是管理仓库的具体服务器,每个服务器上可以有多个仓 库,而每个仓库下面有多个镜像。从这方面来说,仓库可以被认为是一个具体的项目或目录。例如对于仓库地址 dl.dockerpool.com/ubuntu 来说, dl.dockerpool.com 是注册服务器地址, ubuntu 是仓库名。 大部分时候,并不需要严格区分这两者的概念。

1.1 DockerHub

1.1.1 什么是Docker Hub

目前 Docker 官方维护了一个公共仓库 Docker Hub,其中已经包括了超过 15,000 的镜像。大部分需求,都可以通过在 Docker Hub 中直接下载镜像来实现。 登录 可以通过执行 docker login 命令来输入用户名、密码和邮箱来完成注册和登录。 注册成功后,本地用户目录的 .dockercfg 中将保存用户的认证信息。 基本操作 用户无需登录即可通过 docker search 命令来查找官方仓库中的镜像,并利用 docker pull 命令来将它下载到本 地。 例如以 centos 为关键词进行搜索:

[root@base ~]# docker search centos
INDEX       NAME                                                   DESCRIPTION                                     STARS     OFFICIAL   AUTOMATED
docker.io   docker.io/centos                                       The official build of CentOS.                   7292      [OK]
docker.io   docker.io/kasmweb/centos-7-desktop                     CentOS 7 desktop for Kasm Workspaces            24
docker.io   docker.io/couchbase/centos7-systemd                    centos7-systemd images with additional deb...   4                    [OK]
docker.io   docker.io/continuumio/centos5_gcc5_base                                                                3
docker.io   docker.io/dokken/centos-7                              CentOS 7 image for kitchen-dokken               3
docker.io   docker.io/dokken/centos-stream-8                                                                       2
docker.io   docker.io/dokken/centos-stream-9                                                                       2
docker.io   docker.io/spack/centos6                                CentOS 6 with Spack preinstalled                1
docker.io   docker.io/spack/centos7                                CentOS 7 with Spack preinstalled                1
docker.io   docker.io/bitnami/centos-base-buildpack                Centos base compilation image                   0                    [OK]
docker.io   docker.io/bitnami/centos-extras-base                                                                   0
docker.io   docker.io/corpusops/centos                             centos corpusops baseimage                      0
docker.io   docker.io/corpusops/centos-bare                        https://github.com/corpusops/docker-images/     0
docker.io   docker.io/couchbase/centos-69-sdk-build                                                                0
docker.io   docker.io/couchbase/centos-69-sdk-nodevtoolset-build                                                   0
docker.io   docker.io/couchbase/centos-70-sdk-build                                                                0
docker.io   docker.io/couchbase/centos-72-java-sdk                                                                 0
docker.io   docker.io/couchbase/centos-72-jenkins-core                                                             0
docker.io   docker.io/datadog/centos-i386                                                                          0
docker.io   docker.io/dokken/centos-5                              EOL DISTRO: For use with kitchen-dokken, B...   0
docker.io   docker.io/dokken/centos-6                              CentOS 6 image for kitchen-dokken               0
docker.io   docker.io/dokken/centos-8                              CentOS 8 image for kitchen-dokken               0
docker.io   docker.io/fnndsc/centos-python3                        Source for a slim Centos-based Python3 ima...   0                    [OK]
docker.io   docker.io/spack/centos-stream                                                                          0
docker.io   docker.io/ustclug/centos                               Official CentOS Image with USTC Mirror          0

image.png

1.1.2 pull---从dockerhub拉取镜像(ubuntu)

[root@base ~]# docker pull ubuntu
Using default tag: latest
Trying to pull repository docker.io/library/ubuntu ...
latest: Pulling from docker.io/library/ubuntu
d19f32bd9e41: Pull complete
Digest: sha256:34fea4f31bf187bc915536831fd0afc9d214755bf700b5cdb1336c82516d154e
Status: Downloaded newer image for docker.io/ubuntu:latest
[root@base ~]# docker images
REPOSITORY          TAG                 IMAGE ID            CREATED             SIZE
ssh-server          latest              4e28f6e4fc6a        19 hours ago        390 MB
docker.io/ubuntu    latest              df5de72bdb3b        3 weeks ago         77.8 MB
docker.io/centos    7                   eeb6ee3f44bd        11 months ago       204 MB

image.png

1.2 设置镜像加速

点击此处设置阿里云镜像加速服务

image.png\
修改为阿里云镜像加速\

image.png

1.3 私有仓库

因为某些安全、隐私、网络、法规等等问题,使用公共仓库并不方便,用户可以使用docker提供的私有仓库镜像搭建自己的私有仓库

1.3.1 docker-registry

docker-registry 是官方提供的工具,可以用于构建私有的镜像仓库

搭建方法

# 运行本地仓库容器
docker run -dit --name registry --restart=always -p 5000:5000 registry

# 修改docker配置文件
vi /etc/sysconfig/docker
# 添加
# 172.31.36.113 为宿主机局域网IP地址,请自行更改为自己的IP地址
ADD_REGISTRY='--add-registry 192.168.200.201:5000'
INSECURE_REGISTRY='--insecure-registry 192.168.200.201:5000'

vi /etc/docker/daemon.json
# 添加
# 注意上一行后面需增加 , 
"insecure-registries":["192.168.200.201:5000"]

vi /usr/lib/systemd/system/docker.service
删除  $INSECURE_REGISTRY \ 这一行

# 重新加载
systemctl deamon-reload
systemctl restart docker

image.png

目录
相关文章
|
1天前
|
Docker 容器
【Docker】掌握 Docker 镜像操作:从基础到进阶
【Docker】掌握 Docker 镜像操作:从基础到进阶
|
1天前
|
存储 虚拟化 数据中心
|
1天前
|
Ubuntu 应用服务中间件 Shell
Docker入门
Docker入门
28 0
|
1天前
|
存储 Ubuntu Linux
Docker 从入门到实践:Docker介绍
Docker 从入门到实践:Docker介绍
|
1天前
|
应用服务中间件 持续交付 nginx
【Docker专栏】Docker入门指南:快速构建你的第一个容器
【5月更文挑战第7天】Docker 入门指南:容器化应用利器。了解 Docker 核心概念——镜像、容器和仓库。安装 Docker 后,运行官方 `hello-world` 验证安装,再尝试运行 `nginx` Web 服务器。通过端口映射访问容器内服务,学习管理容器命令。创建自定义镜像,编写 Dockerfile,实现 Python Web 应用容器化。Docker 助力高效开发与运维,探索更多自动化部署与微服务场景。
【Docker专栏】Docker入门指南:快速构建你的第一个容器
|
1天前
|
安全 Linux 数据库
Docker 入门详解
通过遵循这些步骤,你将能够快速入门 Docker 并开始探索容器化的世界,关注 V 哥,技术之路一起成长。
|
1天前
|
存储 Apache Swift
无限套娃_docker入门(镜像、容器、仓库)
无限套娃_docker入门(镜像、容器、仓库)
32 0
|
1天前
|
Linux 虚拟化 Docker
docker入门
docker入门
23 2
|
Kubernetes Cloud Native 算法
【Docker】企业进阶实战【Docker-Compose/Stack/Secret/Swarm/Config】
【Docker】企业进阶实战【Docker-Compose/Stack/Secret/Swarm/Config】
159 0
【Docker】企业进阶实战【Docker-Compose/Stack/Secret/Swarm/Config】
|
SQL NoSQL Cloud Native
【云原生】1.5 Docker 进阶实战
创建一个redis (mkdir redis),然后打开 redis(cd redis),准备好配置文件(vi redis.conf),输入 :wq 退出并保存。 redis使用自定义配置文件启动(记得要添加安全组)
100 0
【云原生】1.5 Docker 进阶实战

热门文章

最新文章

http://www.vxiaotou.com