Каталог статей
0. Установите Докер
Docker делится на две основные версии: CE и EE. CE означает Community Edition (бесплатно, с периодом поддержки 7 месяцев), а EE означает Enterprise Edition, в которой особое внимание уделяется безопасности и она платная, с периодом поддержки 24 месяца. (Просто используйте бесплатную версию здесь)
Docker CE разделен на три канала обновления stable
test
и .nightly
На официальном сайте есть руководства по установке в различных средах , Здесь мы в основном знакомимся с установкой Docker CE на CentOS.
1. Установите Докер на CentOS
Docker CE поддерживает 64-битную версию CentOS 7 и требует версию ядра не ниже 3.10. CentOS 7 соответствует минимальным требованиям к ядру, поэтому мы устанавливаем Docker на CentOS 7.
1.1. Удаление (необязательно)
Если вы ранее устанавливали старую версию Docker, вы можете использовать следующую команду для ее удаления:
yum remove docker \
docker-client \
docker-client-latest \
docker-common \
docker-latest \
docker-latest-logrotate \
docker-logrotate \
docker-selinux \
docker-engine-selinux \
docker-engine \
docker-ce
1.2. Установите докер
В первую очередь нужно подключить виртуальную машину к интернету и установить yum tool (yum-utils)
yum install -y yum-utils \
device-mapper-persistent-data \
lvm2 --skip-broken
Затем обновите локальный зеркальный источник: (внешний источник по умолчанию относительно медленный, здесь он заменен на источник Alibaba Cloud)
# 设置docker镜像源
yum-config-manager \
--add-repo \
https://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo
sed -i 's/download.docker.com/mirrors.aliyun.com\/docker-ce/g' /etc/yum.repos.d/docker-ce.repo
yum makecache fast
Затем введите команду:
yum install -y docker-ce
-y означает не спрашивать во время процесса установки, это все y
docker-ce — бесплатная версия для сообщества. Подождите некоторое время, докер будет успешно установлен.
1.3. Запустить докер
Приложения Docker должны использовать разные порты и изменять настройки брандмауэра одну за другой. Это очень хлопотно, поэтому рекомендуется закрыть брандмауэр напрямую!
Перед запуском докера обязательно закройте брандмауэр! !
Перед запуском докера обязательно закройте брандмауэр! !
Перед запуском докера обязательно закройте брандмауэр! !
Слишком много ассоциированных портов, удобнее сразу закрыть брандмауэр при обучении
# 关闭
systemctl stop firewalld
# 禁止开机启动防火墙
systemctl disable firewalld
# 查看防火墙状态
systemctl status firewalld
Запускаем докер командой:
systemctl start docker # 启动docker服务
systemctl stop docker # 停止docker服务
systemctl restart docker # 重启docker服务
Затем введите команду для просмотра версии докера:
docker -v
Как показано на рисунке:
Вы также можете проверить статус запуска докера, чтобы убедиться, что он запущен.
systemctl status docker
1.4 Настроить ускорение зеркала
Скорость сети официального зеркального склада докера низкая, поэтому нам нужно настроить службу внутреннего зеркала:
См. документ об ускорении зеркал Alibaba Cloud: https://cr.console.aliyun.com/cn-hangzhou/instances/mirrors .
Настройте ускорение изображений Alibaba Cloud здесь
Просто выполните 4 команды, предоставленные официальным документом напрямую.
sudo mkdir -p /etc/docker
sudo tee /etc/docker/daemon.json <<-'EOF'
{
"registry-mirrors": ["https://41k3c116.mirror.aliyuncs.com"]
}
EOF
sudo systemctl daemon-reload
sudo systemctl restart docker
После выполнения второй команды можно проверить статус записи файла:
cat /etc/docker/daemon.json
2. Установите Docker Compose на CentOS7.
2.1. Скачать
Под Linux качать нужно через команду:
# 安装
curl -L https://github.com/docker/compose/releases/download/1.23.1/docker-compose-`uname -s`-`uname -m` > /usr/local/bin/docker-compose
Если скорость загрузки низкая или загрузка не удалась, вы можете использовать файл docker-compose, предоставленный в материалах предварительного занятия:
Загрузка в /usr/local/bin/
каталог также работает.
2.2. Изменить права доступа к файлам
Изменить права доступа к файлам:
# 修改权限 (所有用户加上执行权)
chmod +x /usr/local/bin/docker-compose
2.3.Базовая команда автодополнения:
После сопоставления будет подсказка кода при вводе композиций
# 补全命令
curl -L https://raw.githubusercontent.com/docker/compose/1.29.1/contrib/completion/bash/docker-compose > /etc/bash_completion.d/docker-compose
На самом деле это файл с GitHub: https://raw.githubusercontent.com/docker/compose/1.29.1/contrib/completion/bash/docker-compose
для чтения содержимого и записи его на локальный /etc/bash_completion.d/docker-compose
GitHub. знайте, что время от времени браузер сначала посещает этот веб-сайт, если вы не можете его посетить, вам, возможно, придется просматривать Интернет с научной точки зрения.
3. Зеркальный склад Docker
Создание зеркального хранилища может быть реализовано на основе DockerRegistry, официально предоставленного Docker.
Склад зеркал: Docker Registry (буквально переводится как центр регистрации докеров, каждое зеркало — это независимый микросервис, создание зеркала — это регистрация микросервиса в центре регистрации докеров)
Адрес официального сайта: https://hub.docker.com/_/registry
3.1 Упрощенная версия зеркального склада (не рекомендуется)
Официальный Docker Registry от Docker — это базовая версия хранилища образов Docker, которая имеет полные функции управления хранилищем, но не имеет графического интерфейса.
Метод построения относительно прост, команда выглядит следующим образом:
docker run -d \
--restart=always \
--name registry \
-p 5000:5000 \
-v registry-data:/var/lib/registry \
registry
Команда монтирует данные реестра тома данных в каталог /var/lib/registry в контейнере, который является каталогом, в котором частная зеркальная библиотека хранит данные.
Посетите http://YourIp:5000/v2/_catalog, чтобы просмотреть изображения, содержащиеся в текущем частном сервисе изображений.
3.2 Версия с графическим интерфейсом
Разработано частным лицом, а не официальным лицом.
Используйте DockerCompose для интеграции официального реестра Docker с пользовательским интерфейсом, разработанным третьей стороной.
Используйте DockerCompose для развертывания DockerRegistry с графическим интерфейсом, команда выглядит следующим образом:
version: '3.0'
services:
registry:
image: registry
volumes:
- ./registry-data:/var/lib/registry
ui:
image: joxit/docker-registry-ui:static
ports:
- 8080:80
environment:
- REGISTRY_TITLE=whu私有仓库
- REGISTRY_URL=http://registry:5000
depends_on:
- registry
Но протокол https не настроен, и докер по умолчанию не доверяет этому сервису.Сначала
сделайте 3.3 (измените конфигурацию и перезапустите докер), а потом сделайте 3.2
# 新建文件夹
mkdir registry-ui
cd registry-ui
# 创建yml文件
touch docker-compose.yml
# 用本地文件编辑器修改 也就是复制上面内容即可
# 然后在该目录下执行构建命令:下载要花好多时间,耐心等待
docker-compose up -d
# 静待构建完成,最后浏览器访问
http://192.168.141.100:8080/
3.3. Настройка доверительного адреса Docker
Наш приватный сервер использует протокол http, которому Docker по умолчанию не доверяет, поэтому нам нужно сделать конфигурацию:
# 打开要修改的文件
vi /etc/docker/daemon.json
# 添加内容: 注意ip换成自己的 千万之一上一行加一个,逗号分隔
"insecure-registries":["http://192.168.141.100:8080"]
# 重加载
systemctl daemon-reload
# 重启docker
systemctl restart docker