在CentOS系统中轻松安装和配置Docker指南
Docker是一个开源的应用容器引擎,基于Go语言并遵从Apache2.0协议开源。它让开发者可以打包他们的应用以及依赖包到一个可移植的镜像中,然后发布到任何流行的Linux或Windows操作系统的机器上,也可以实现虚拟化。使用Docker可以将应用程序和基础设施层隔离,并且能将基础设施当作程序一样进行管理。通过Docker,开发者在笔记本上编译测试通过的容器可以批量地在生产环境中部署,包括VM
·
目录
前言
Docker是一个开源的应用容器引擎,基于Go语言并遵从Apache2.0协议开源。它让开发者可以打包他们的应用以及依赖包到一个可移植的镜像中,然后发布到任何流行的Linux或Windows操作系统的机器上,也可以实现虚拟化。使用Docker可以将应用程序和基础设施层隔离,并且能将基础设施当作程序一样进行管理。通过Docker,开发者在笔记本上编译测试通过的容器可以批量地在生产环境中部署,包括VMs(虚拟机)、OpenStack集群和其他的基础应用平台。Docker属于Linux容器的一种封装,提供简单易用的容器使用接口。它目前是世界顶级软件容器平台,归属于虚拟化技术一类。
Docker的基本概念包括镜像、容器和仓库。镜像是Docker运行容器的前提,仓库是存放镜像的场所,可见镜像是Docker的核心。容器是镜像运行时的实体,可以被创建、启动、停止、删除等。
一、安装Docker
IP | 系统版本 | 配置 |
192.168.40.137 | Centos 7.9 | 4C8G100G |
1、关闭防火墙
将防火墙关闭并设置成禁用开机自启动
#停止防火墙服务
[root@bogon ~]# systemctl stop firewalld
#禁用开机自启动
[root@bogon ~]# systemctl disable firewalld
#查看状态
[root@bogon ~]# systemctl status firewalld
2、关闭SELinux
临时关闭
[root@bogon ~]# setenforce 0
[root@bogon ~]# getenforce
Permissive
永久关闭
[root@bogon ~]# vim /etc/selinux/config
#将enforcing改为disabled
SELINUX=disabled
#重启服务器
[root@bogon ~]# reboot
#查看结果
[root@bogon ~]# getenforce
Disabled
3、配置Docker Yum源
安装依赖项
[root@bogon ~]# yum install -y yum-utils device-mapper-persistent-data lvm2
配置Docker Yum源
[root@xianchaomaster1 ~]# yum-config-manager --add-repo http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo
安装 Docker
[root@bogon ~]# yum install docker-ce -y
4、启动 Docker 服务
启动Docker
#启动Docker
[root@bogon ~]# systemctl start docker
#设置开机自启动
[root@bogon ~]# systemctl enable docker
#查看状态
[root@bogon ~]# systemctl status docker
● docker.service - Docker Application Container Engine
Loaded: loaded (/usr/lib/systemd/system/docker.service; enabled; vendor preset: disabled)
Active: active (running) since Thu 2024-02-01 22:43:58 EST; 1min 39s ago
Docs: https://docs.docker.com
Main PID: 2178 (dockerd)
CGroup: /system.slice/docker.service
└─2178 /usr/bin/dockerd -H fd:// --containerd=/run/containerd/containerd.sock
5、配置Docker镜像加速
[root@bogon ~]# mkdir -p /etc/docker
[root@bogon ~]# tee /etc/docker/daemon.json <<-'EOF'
> {
> "registry-mirrors": ["https://ofcqsr1y.mirror.aliyuncs.com"]
> }
> EOF
{
"registry-mirrors": ["https://ofcqsr1y.mirror.aliyuncs.com"]
}
[root@bogon ~]# systemctl daemon-reload
[root@bogon ~]# systemctl restart docker
[root@bogon ~]# systemctl status docker
● docker.service - Docker Application Container Engine
Loaded: loaded (/usr/lib/systemd/system/docker.service; enabled; vendor preset: disabled)
Active: active (running) since Thu 2024-02-01 22:50:10 EST; 12s ago
二、测试
1、搜索镜像
[root@bogon ~]# docker search nginx
2、拉取镜像
[root@bogon ~]# docker pull nginx
Using default tag: latest
latest: Pulling from library/nginx
a2abf6c4d29d: Pull complete
a9edb18cadd1: Pull complete
589b7251471a: Pull complete
186b1aaa4aa6: Pull complete
b4df32aa5a72: Pull complete
a0bcbecc962e: Pull complete
Digest: sha256:0d17b565c37bcbd895e9d92315a05c1c3c9a29f762b011a10c54a66cd53c9b31
Status: Downloaded newer image for nginx:latest
docker.io/library/nginx:latest
3、运行第一个Docker容器
[root@bogon ~]# docker run -itd --name test -p 80:80 nginx
a8b5804a2e196a3d2df90b6fff2690bf3bec9abef339dd874fc1edcd2debb0bd
4、检查状态
[root@bogon ~]# docker ps
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
a8b5804a2e19 nginx "/docker-entrypoint.…" About a minute ago Up About a minute 0.0.0.0:80->80/tcp, :::80->80/tcp test
5、访问测试
在浏览器输入服务器IP:80
更多推荐
已为社区贡献17条内容
所有评论(0)