Вы находитесь на странице: 1из 3

Работа с секретами

Создание секрета:

STDIN | docker secret create [NAME] -

Вывод списка секретов:

docker secret ls

Инспектирование секрета:

docker secret inspect [NAME]

Использование секретов:

docker service create --name [NAME] --secret [SECERT] [IMAGE]

Удаление секрета:

docker secret rm [NAME]

Настройка окружения:

mkdir Secrets
cd secrets

Создание секрета с использованием STDIN:

openssl rand -base64 20 | docker secret create my_secret_data -

Создание секрета с использованием файла:

openssl rand -base64 20 > secret.txt


docker secret create my_secret_data2 secret.txt
Создание сервиса, использующего секрет:

docker service create --name redis --secret my_secret_data redis:alpine

Поиск узла, на котором работает сервис:

docker service ps redis

Удаление секрета ​my_secret_data2​:

docker secret rm my_secret_data2

Генерация файлов с паролями:

openssl rand -base64 20 > db_password.txt


openssl rand -base64 20 > db_root_password.txt

Создание стека Wordpress:

vi docker-compose.yml

Содержимое ​docker-compose.yml​:

version: '3.1'

services:
db:
image: mysql:5.7
volumes:
- db_data:/var/lib/mysql
networks:
mysql_internal:
aliases: ["db"]
environment:
MYSQL_ROOT_PASSWORD_FILE: /run/secrets/db_root_password
MYSQL_DATABASE: wordpress
MYSQL_USER: wordpress
MYSQL_PASSWORD_FILE: /run/secrets/db_password
secrets:
- db_root_password
- db_password

wordpress:
depends_on:
- db
image: wordpress:latest
networks:
mysql_internal:
aliases: ["wordpress"]
wordpress_public:
ports:
- "8001:80"
environment:
WORDPRESS_DB_HOST: db:3306
WORDPRESS_DB_USER: wordpress
WORDPRESS_DB_PASSWORD_FILE: /run/secrets/db_password
secrets:
- db_password

secrets:
db_password:
file: db_password.txt
db_root_password:
file: db_root_password.txt

volumes:
db_data:
networks:
mysql_internal:
driver: "overlay"
internal: true
wordpress_public:
driver: "overlay"

Развертывание стека:

docker stack deploy --compose-file docker-compose.yml wp

Вам также может понравиться