Завантажити зображенняНапишіть Dockerfile
Після запису Dockerfile помістіть його у кореневу директорію веб-програми і завантажте на сервер.
CD було завантажено до щойно завантаженого каталогу.
Запустіть команду Docker тут: docker build -<要生成的镜像的名称>t . (Зверніть увагу, що в кінці є крапка, ця точка є шляхом до файлу Docker, оскільки файл Dockerfile тепер у поточній директорії, тож просто натисніть крапку, ім'я зображення після параметра -t не обов'язково має бути <>)
Наприклад:
На останньому етапі ми створили зображення, тепер вмістили зображення в Docker і дали йому працювати.
Виконати команду Docker: docker run -d --rm -p 5000:<实例名称>80 --name <镜像名称>
-d виведе унікальний ідентифікатор образу після успішного запуску, --rm визначить, що якщо є екземпляр з такою ж назвою, він буде видалений і замінений -p Вказати програму, яка запускається порт Хост порт: контейнерний порт Примітка: оскільки EXPOSE не вказаний вище, порт контейнера дорівнює 80 параметру --name Після того, як ім'я екземпляра та ім'я зображення не потрібно <>
Я вказав порт 5002 сервера до порту 80 контейнера, і тепер доступ до 5002 відкриває доступ до програми DEMO
Docker PS, щоб побачити всі екземпляри, які були розгорнуті
Екземпляр, розгорнутий за наведеною вище командою, буде автоматично видалений після перезавантаження контейнера або перезавантаження сервера, тобто після перезавантаження сервісу або образу Docker екземпляр зникне, і Docker потрібно запустити заново. Як показано на рисунку нижче, інстанс, який щойно розгорнувся, зникає після перезапуску сервісу
Автоматичне розгортання після перезапуску Використовуйте цю команду: docker run -d --restart=always -p 5002:80 --name <实例名> <镜像名> Примітка: --restart і --rm конфлікт, можна вибрати лише один
Як показано на рисунку нижче, використання параметра --restart=always не вплине на екземпляр
Використовуйте Nginx для зворотних проксі
Відкрийте конфігураційний файл і змініть конфігурацію всередині серверного вузла
Після налаштування виконайте команду nginx -t у liunx, яка виявить, чи неправильний конфігураційний файл nginx
Якщо виявлення пройде, виконайте nginx -s reload, що оновить конфігураційний файл і негайно його використає
Після виконання отримайте доступ до доменного імені, яке ви щойно прив'язали, і використовуйте його для успішного доступу до екземпляра, який раніше був опублікований на порт 5002 через Docker.
|