У цьому посібнику я проведу вас через процес розгортання популярної гри 2048 за допомогою Docker на AWS Elastic Beanstalk. Elastic Beanstalk спрощує розгортання та керування веб-додатками, а Docker дозволяє нам контейнеризувати наш додаток для зручного розгортання.
Попередні вимоги
Перед тим, як почати, вам знадобляться наступні ресурси:
- Обліковий запис AWS: Зареєструйтеся в AWS, якщо у вас його ще немає.
- Docker: Встановіть Docker на вашій локальній машині.
Гра 2048
Ми будемо використовувати вихідний код гри 2048, розміщений на GitHub від gabrielecirulli. Це популярна веб-гра, де мета — переміщати плитки на сітці, щоб поєднувати їх і досягти плитки 2048.
Крок 1: Створення Dockerfile
Для контейнеризації гри 2048 створимо Dockerfile
з таким вмістом:
DockerfileCopy code
FROM ubuntu:22.04
RUN apt-get update
RUN apt-get install -y nginx zip curlRUN echo "daemon off;" >> /etc/nginx/nginx.conf
RUN curl -o /var/www/html/master.zip -L [https://codeload.github.com/gabrielecirulli/2048/zip/master](https://codeload.github.com/gabrielecirulli/2048/zip/master)RUN cd /var/www/html/ && unzip master.zip && mv 2048-master/* . && rm -rf 2048-master master.zipEXPOSE 80CMD ["/usr/sbin/nginx", "-c", "/etc/nginx/nginx.conf"]
Запустіть цей файл за допомогою: docker build -t nameofthefile .
Цей Dockerfile налаштовує середовище на основі Ubuntu, встановлює Nginx, завантажує вихідний код гри 2048 з GitHub і налаштовує Nginx для надання гри.
Якщо ви хочете дізнатися, що робить кожна команда у Dockerfile, натисніть тут
Крок 2: Розгортання на AWS Beanstalk
Створення середовища Elastic Beanstalk:
- Створіть середовище Elastic Beanstalk
- Увійдіть у свою AWS Management Console.
- Перейдіть до AWS Elastic Beanstalk.
- Натисніть "Створити нове середовище".
- Виберіть "Web server environment".
- Налаштування середовища:
- Присвойте середовищу ім’я та опис.
- Виберіть платформу. У цьому випадку виберіть "Docker".
- Завантаження коду:
- Завантажте ваш Dockerfile та код додатка.
- Elastic Beanstalk автоматично побудує і розгорне ваш Docker-контейнер.
- Налаштування додаткових опцій:
- Ви можете налаштувати додаткові опції, такі як змінні середовища або типи інстансів.
- Огляд і створення:
- Перегляньте налаштування конфігурації та створіть своє середовище.
- Доступ до вашої гри 2048:
- Після створення середовища ви отримаєте URL, де буде розміщена ваша гра 2048.
Висновок
Пройшовши ці кроки, ви успішно розгорнули гру 2048 на AWS Elastic Beanstalk за допомогою Docker. Така конфігурація дозволяє вам легко керувати і масштабувати ваш веб-додаток.
Вихідний код цього проєкту можна знайти у моєму репозиторії на GitHub та прочитати цей посібник на Medium.
Якщо у вас виникли проблеми, не соромтеся звертатися до мене через twitter
Не соромтеся поділитися цим постом з іншими, хто може бути зацікавлений у розгортанні веб-додатків за допомогою AWS Beanstalk і Docker.
Удачі в грі!
Перекладено з: Deploying the 2048 Game on AWS Beanstalk Using Docker