网站信息发布系统,房地产开发公司职位,深圳市宝安区天气预报,百度蜘蛛如何找网站docker镜像仓库官网 一、Docker的基本概念
1.Docker的三大核心组件 docker 镜像 --------docker images docker 仓库---------docker registeries docker 容器---------docker containers
2.Docker 镜像 Docker镜像是运行docker容器时的只读模板#xff0c;每一个镜像由一…docker镜像仓库官网 一、Docker的基本概念
1.Docker的三大核心组件 docker 镜像 --------docker images docker 仓库---------docker registeries docker 容器---------docker containers
2.Docker 镜像 Docker镜像是运行docker容器时的只读模板每一个镜像由一系列的层组成Docker 使用 UnionFS 来将这些层联合到单独的镜像中。UnionFS 允许独立文件系统中的文件和文件夹(称之为分支)被透明覆盖形成一个单独连贯的文件系统。正因为有了这些层的存在Docker 是如此的轻量。当你改变了一个 Docker 镜像比如升级到某个程序到新的版本一个新的层会被创建。因此不用替换整个原先的镜像或者重新建立(在使用虚拟机的时候你可能会这么做)只是一个新的层被添加或升级了。现在你不用重新发布整个镜像只需要升级层使得分发 Docker 镜像变得简单和快速。 在 Docker 的术语里一个只读层被称为镜像一个镜像是永久不会变的。 由于 Docker 使用一个统一文件系统Docker 进程认为整个文件系统是以读写方式挂载的。 但是所有的变更都发生顶层的可写层而下层的原始的只读镜像文件并未变化。由于镜像不可写所以镜像是无状态的。 每一个镜像都可能依赖于由一个或多个下层的组成的另一个镜像。下层那个镜像是上层镜像的父镜像。 镜像名字 registry/repo:tag daocloud.io/library/centos:7 基础镜像 一个没有任何父镜像的镜像谓之基础镜像。 镜像ID 所有镜像都是通过一个 64 位十六进制字符串 内部是一个 256 bit 的值来标识的。 为简化使用前 12 个字符可以组成一个短ID可以在命令行中使用。短ID还是有一定的碰撞机率所以服务器总是返回长ID。 3、Docker 仓库 用来保存镜像可以理解为代码控制中的代码仓库Docker仓库分为公有和私有的概念: 公有的 Docker 仓库名字是 Docker Hub。Docker Hub 提供了庞大的镜像集合供使用。这些镜像可以是自己创建或者在别人的镜像基础上创建。Docker 仓库是 Docker 的分发部分。 4.Docker容器 Docker容器和文件架很类似一个Docker容器包含了某个应用运行所需的环境每一个Docker容器都是由Docker镜像创建的Docker容器可以运行开始停止移动或者删除每一个Docker容器都是独立安全的应用平台 二、Docker安装
1、关闭防火墙和selinux
[rootlocalhost ~]# systemctl stop firewalld setenforce 0
2、配置aliyun的Docker源
[rootlocalhost ~]# yum install -y yum-utils device-mapper-persistent-data lvm2 git
[rootlocalhost ~]# yum-config-manager --add-repo http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo
已加载插件fastestmirror
adding repo from: http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo
grabbing file http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo to /etc/yum.repos.d/docker-ce.repo
repo saved to /etc/yum.repos.d/docker-ce.repo
3、安装docker 3.1查看docker版本
[rootlocalhost ~]# yum list docker-ce --showduplicates
已加载插件fastestmirror
Repository docker-ce-stable is listed more than once in the configuration
Loading mirror speeds from cached hostfile
可安装的软件包
docker-ce.x86_64 17.03.0.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.2.ce-1.el7.centos docker-ce-stable
docker-ce.x86_64 17.03.3.ce-1.el7 docker-ce-stable
docker-ce.x86_64 17.06.0.ce-1.el7.centos docker-ce-stable
docker-ce.x86_64 17.06.1.ce-1.el7.centos docker-ce-stable
3.2 安装最新版的docker
[rootlocalhost ~]# yum install docker-ce -y 安装较旧版本比如Docker 17.03.2) 需要指定完整的rpm包的包名并且加上--setoptobsoletes0 参数 yum install -y --setoptobsoletes0 \ docker-ce-17.03.2.ce-1.el7.centos.x86_64 \ docker-ce-selinux-17.03.2.ce-1.el7.centos.noarch 4、启动Docker服务
[rootlocalhost ~]# systemctl start docker
[rootlocalhost ~]# systemctl enable docker
Created symlink from /etc/systemd/system/multi-user.target.wants/docker.service to /usr/lib/systemd/system/docker.service.
5、查看docker版本 docker -v docker version [rootlocalhost ~]# docker -v
Docker version 24.0.7, build afdd53b
6.查看docker运行状态
[rootlocalhost ~]# docker info
Client: Docker Engine - CommunityVersion: 24.0.7Context: defaultDebug Mode: falsePlugins:buildx: Docker Buildx (Docker Inc.)Version: v0.11.2Path: /usr/libexec/docker/cli-plugins/docker-buildxcompose: Docker Compose (Docker Inc.)Version: v2.21.0Path: /usr/libexec/docker/cli-plugins/docker-composeServer:Containers: 0Running: 0Paused: 0Stopped: 0Images: 0Server Version: 24.0.7Storage Driver: overlay2Backing Filesystem: xfsSupports d_type: trueUsing metacopy: falseNative Overlay Diff: trueuserxattr: falseLogging Driver: json-fileCgroup Driver: cgroupfsCgroup Version: 1Plugins:Volume: localNetwork: bridge host ipvlan macvlan null overlayLog: awslogs fluentd gcplogs gelf journald json-file local logentries splunk syslogSwarm: inactiveRuntimes: io.containerd.runc.v2 runcDefault Runtime: runcInit Binary: docker-initcontainerd version: 3dd1e886e55dd695541fdcd67420c2888645a495runc version: v1.1.10-0-g18a0cb0init version: de40ad0Security Options:seccompProfile: builtinKernel Version: 3.10.0-1160.el7.x86_64Operating System: CentOS Linux 7 (Core)OSType: linuxArchitecture: x86_64CPUs: 4Total Memory: 3.682GiBName: localhost.localdomainID: 67b53910-1166-48f6-9bfd-68fb06c60cf7Docker Root Dir: /var/lib/dockerDebug Mode: falseExperimental: falseInsecure Registries:127.0.0.0/8Live Restore Enabled: false
7、生产docker的环境配置
[rootlocalhost ~]# sudo mkdir -p /etc/docker
[rootlocalhost ~]# sudo tee /etc/docker/daemon.json -EOF{registry-mirrors: [https://pilvpemn.mirror.aliyuncs.com],exec-opts: [native.cgroupdriversystemd],log-driver: json-file,log-opts: {max-size: 100m},storage-driver: overlay2}EOF
{registry-mirrors: [https://pilvpemn.mirror.aliyuncs.com],exec-opts: [native.cgroupdriversystemd],log-driver: json-file,log-opts: {max-size: 100m},storage-driver: overlay2
}
[rootlocalhost ~]# sudo systemctl daemon-reload
[rootlocalhost ~]# sudo systemctl restart docker
一定注意编码问题出现错误---查看命令journalctl -amu docker 即可发现错误 扩展修改docker的数据目录
1.查看原数据目录 2修改目录
[rootlocalhost ~]# vim /usr/lib/systemd/system/docker.service [rootlocalhost ~]# mkdir /opt/data -p
[rootlocalhost ~]# systemctl daemon-reload
[rootlocalhost ~]# systemctl restart docker
[rootlocalhost ~]# docker info | grep Root Docker Root Dir: /opt/data