Create volume:
Check if volume exists:
Inspect metadata of volume:
Run container with mounting this persistent volume:
Приклад з уроку
Тепер збілдимо та запустимо контейнер:
docker build . -f Dockerfile.mysql -t my-sql:1.0
docker run -d -p 3306:3306 --name my-mysql -v my-mysql-data:/var/lib/mysql my-sql:1.0
У команді вище ми не створили новий volume. Якщо не вказувати існуючий volume, то Docker створить його сам, можеш перевірити:
Якщо для заповнення данних для мережевої взаємодії потрібен ІР контейнеру то дізнатись його можна:
скоріше за все видать мережу з назвою bridge, переглянемо її налаштуванняExample of MySQL Dockerfile:
# Use the official MySQL image from Docker Hub
FROM mysql:latest
# Environment variables for MySQL configuration
ENV MYSQL_ROOT_PASSWORD=1234
ENV MYSQL_DATABASE=app_db
ENV MYSQL_USER=app_user
ENV MYSQL_PASSWORD=1234
# Expose port 3306 for MySQL connections
EXPOSE 3306
# Set the data directory as a volume
VOLUME /var/lib/mysql
# Copy SQL initialization script to set up the database and user
COPY init.sql /docker-entrypoint-initdb.d/
init.sql: