Установка Portainer
Portainer для граф оболочки Docker
размещать будем в папку /srv/portainer
Переходим в папку srv
cd /srvСоздаем каталог для контейнера
sudo mkdir portainerПереходим в каталог портейнера
cd ./portainerСоздаем файл конфигурации для docker compose
sudo nano docker-compose.ymlЗаполняем файл, сохраняем, закрываем.
services:
portainer:
# Безопасность
security_opt:
- no-new-privileges:true # не выдавать дополнительных привелегий
tmpfs:
- /tmp:rw,noexec,nosuid # не запускать исполняемые файлы из временной папки
# Настройки контейнера
container_name: portainer
image: portainer/portainer-ce:2.33.2
restart: always
#hostname: portainer.domain.com
networks:
- reverse_proxy
environment:
TZ: Europe/Moscow
volumes:
- /etc/localtime:/etc/localtime:ro # установка времени
- /var/run/docker.sock:/var/run/docker.sock # расположение докера
- /srv/portainer/portainer_data:/data # расположение настроек порртейнера
ports:
# - "9000:9000"
- "9443:9443"
networks:
reverse_proxy:
external: true/srv/portainer/portainer_data:/data создает постоянное хранилище данных. reverse_proxy заменить на свою сеть прокси, например на caddy_external
Создаем свою сеть (если нет)
docker network create -d bridge reverse_proxyЗапускаем контейнер
docker compose up -dТеперь интерфейс доступен по адресу https://<ip_или_localhost>:9443
Редактируем локальную настройку портейнера. Указываем публичный IP: Environments -> Edit -> Public IP
в Caddyfile (domain.ru заменить):
portainer.domain.ru {
reverse_proxy portainer:9443 {
transport http {
tls_insecure_skip_verify
}
}
}Готово!