Как установить MySQL в Docker-контейнере?

Как установить MySQL в Docker-контейнере?

Апр 02, 2019 ubuntu code snippets docker knowledge base

Установка Docker

Сначала поставьте Docker на Ubuntu. Подробная инструкция здесь: Как установить Docker на Ubuntu?.

Запустим контейнер MySQL в фоне. Пароль для root — "test".

docker run --rm -it -e MYSQL_ROOT_PASSWORD=test -d mysql
  • -d — запускает в фоне, выводит ID контейнера.
  • --rm — удалит контейнер после остановки.

Проверка активных контейнеров

docker ps
CONTAINER ID      IMAGE          COMMAND                  CREATED             STATUS              PORTS                 NAMES
8ee2e6c8174d      mysql         "docker-entrypoint.s…"   9 seconds ago       Up 7 seconds        3306/tcp, 33060/tcp   condescending_snyder

Подключение к MySQL-консоли

docker exec -it 8ee2e6c8174d mysql -u root -ptest
mysql: [Warning] Using a password on the command line interface can be insecure.
Welcome to the MySQL monitor.  Commands end with ; or \g.
Your MySQL connection id is 9
Server version: 8.0.15 MySQL Community Server - GPL

mysql> 

Детали контейнера

Посмотрите сеть, volumes и настройки.

docker inspect 8ee2e6c8174d
[
    {
        "Id": "8ee2e6c8174d4138026f1d54addf9aadc7fbe22727c7f1fb9ca996ce5f7601b2",
        "Created": "2019-03-28T20:53:46.84185469Z",
        "Path": "docker-entrypoint.sh",
        "State": {
            "Status": "running",
            "Running": true,
            ...
        },
        "Networks": {
            "bridge": {
                "Gateway": "172.17.0.1",
                "IPAddress": "172.17.0.2",
                ...
            }
        }
    }
]

Подключение по IP

mysql -u root -ptest -h 172.17.0.2

Все контейнеры (активные и остановленные)

docker ps -a
CONTAINER ID     IMAGE       COMMAND                 CREATED            STATUS                      PORTS                    NAMES
8ee2e6c8174d      mysql      "docker-entrypoint.s…"   2 minutes ago     Up 2 minutes                3306/tcp, 33060/tcp      condescending_snyder
913f33f5a848      mysql      "docker-entrypoint.s…"   12 minutes ago    Exited (0) 11 minutes ago                            jovial_dubinsky
b36cf8b3b664      mysql      "docker-entrypoint.s…"   22 minutes ago    Exited (1) 22 minutes ago                            cocky_mcnulty

Список образов

docker images
REPOSITORY                            TAG                 IMAGE ID            CREATED             SIZE
mysql                                 latest              7bb2586065cd        45 hours ago        477MB

Read in other languages:

EN ES SV RO DE FR HU NL PL EL BG CS PT NB FI IT DA ZH-HANS UZ TR