В корне создаём папку freeipa и необходимые файлы: docker-compose.yml
:
mkdir freeipa
Добавляем содержимое в файл docker-compose.yml
:
cat > freeipa/docker-compose.yml <<EOF
version: "3"
services:
freeipa:
image: freeipa/freeipa-server:centos-8-stream
hostname: freeipa
domainname: freeipa.(youdomaine)
container_name: freeipa
ports:
- 389:389
- 636:636
- 88:88
- 464:464
- 88:88/udp
- 464:464/udp
- 123:123/udp
dns:
- (you_dns_server)
restart: unless-stopped
tty: true
stdin_open: true
environment:
IPA_SERVER_HOSTNAME: freeipa.(youdomaine)
IPA_SERVER_IP: (you_ip_container)
DNS: (you_dns_server)
TZ: "Europe/Astrakhan"
command:
- -U
- --domain=(youdomaine)
- --realm=(youdomaine)
- --admin-password=(youpassword)
- --http-pin=(youpassword)
- --dirsrv-pin=(youpassword)
- --ds-password=(youpassword)
- --no-host-dns
- --no-ntp
- --unattended
cap_add:
- SYS_TIME
- NET_ADMIN
volumes:
- /etc/localtime:/etc/localtime:ro
- /sys/fs/cgroup:/sys/fs/cgroup:ro
- ./data:/data
sysctls:
- net.ipv6.conf.all.disable_ipv6=0
- net.ipv6.conf.lo.disable_ipv6=0
security_opt:
- "seccomp:unconfined"
labels:
- traefik.enable=true
- traefik.http.middlewares.freeipa_https.redirectscheme.scheme=https
- traefik.http.routers.freeipa.entrypoints=web
- traefik.http.routers.freeipa.middlewares=freeipa_https@docker
- traefik.http.routers.freeipa.rule=Host(\`freeipa.(youdomaine)\`)
- traefik.http.routers.freeipa_https.entrypoints=websecure
- traefik.http.routers.freeipa_https.rule=Host(\`freeipa.(youdomaine)\`)
- traefik.http.routers.freeipa_https.tls=true
- traefik.http.services.freeipa.loadbalancer.server.port=80
- traefik.http.routers.freeipa_https.tls.certresolver=le
networks:
default:
ipv4_address: (you_ip_container)
networks:
default:
external:
name: traefik_network
EOF
Не забудьте заменить следующие параметры на ваши собственные:
Теперь ваш контейнер с FreeIPA готов к запуску!
После настройки конфигурации, вы можете запустить FreeIPA с помощью следующей команды:
docker-compose up -d
Теперь ваш FreeIPA сервер работает и готов к использованию! Если у вас есть дополнительные вопросы, не стесняйтесь задавать их. 🌟