предисловие
первоначальное намерение
Недавно я глубоко изучил докер-контейнер огня, и я хочу сделать небольшой проект, чтобы потренировать свои руки.Я просто хочу обновить сайт блога, который я создал раньше, чтобы он был более гиковским. Поэтому это руководство о том, как быстро создать блог-призрак с нуля.
Зачем использовать докер
Docker — действительно удивительная технология. В прошлом было чрезвычайно сложные шаги и множество неожиданных препятствий для создания блогов-призраков или других блог-сайтов.Короче говоря, кривая обучения была крутой, но с использованием технологии контейнеров докеров зеркала других использовались для преобразования и преобразования, и персональные блоги создавались за считанные секунды.
почему призрак
потому что гик :)
Общая архитектура
Он разделен на два контейнера: один — контейнер-призрак службы блогов, а другой — образ базы данных mysql.
шаг
Создайте пользовательскую сеть
docker network create ghost_blog_dev
Пользовательская мостовая сеть в докере будет иметь функцию DNS, а контейнер-призрак может подключаться к контейнеру mysql через имя контейнера вместо IP-адреса.
Создать каталог хранения данных mysql
После уничтожения контейнера mysql сгенерированные данные также будут уничтожены. Таким образом, мы должны хранить объем данных вхозяин, поэтому сначала создайте каталог данных.
mkdir -p /data/blog/
запустить контейнер mysql
docker run -d --name mysql -v /data/blog/:/var/lib/mysql --network ghost_blog_dev -e MYSQL_ROOT_PASSWORD=123456 mysql
Стоит отметить, что -v указывает каталог тома данных, --network указывает подключенную сеть, а --name указывает имя контейнера mysql.
После запуска контейнера его можно использоватьdocker logs mysql
, просмотрите журнал, чтобы убедиться, что контейнер успешно запущен.
подключиться к mysql
Посмотреть ip контейнера mysql
docker network inspect ghost_blog_dev
Подключиться к mysql на хосте, пароль 123456
Измените аутентификацию пользователя root на родную, потому что контейнер-призрак не поддерживает метод аутентификации при входе в mysql 8.0.
ALTER USER 'root'@'%' IDENTIFIED WITH mysql_native_password BY '123456';
Создайте базу данных-призрак (имя таблицы будет автоматически создано контейнером-призраком)
create database ghost;
Создавайте образы-призраки
Извлеките уже написанный образ из моего github и создайте его как имя образа ghost:dev.
docker build -t ghost:dev https://github.com/jiujiujiujiujiuaia/ghost_Dockerfile.git
запустить фантомное изображение
--name указывает имя контейнера, --network указывает подключенную сеть, --url указывает имя домена подключения веб-сайта-призрака (указывается ip без имени домена), а -p указывает отношение сопоставления портов между хостом и контейнер
docker run -d --name blog --network ghost_blog_dev -e url=http://118.24.145.98 -p 80:2368 ghost:dev
Как видно из логов докера, контейнер успешно запущен и необходимые таблицы данных созданы в нашей базе данных-призраке.
В то же время в каталоге данных хоста также можно увидеть данные, сгенерированные контейнером на хост.
Посетите блог!
С вышеперечисленными шагами создание блога завершено! Не нужно разбираться в сложной установке программного обеспечения, установке программных инструментов, различных конфигурациях, все это вытягивание образов, запуск контейнеров, бинго! Заканчивать!
Посетите блог!
Что касается конфигурации блога, вы можете войти в фоновую систему управления через url+/ghost для настройки, поэтому я не буду здесь много говорить.
Суммировать
Продолжение следует