xpressengine으로 도커이미지 만들고 nginx로 배포

tw·2024년 2월 3일

[실습] 요구사항

  1. centos7을 base로 xpressengine을 설치하는 Dockerfile을 생성.
  2. Dockerfile 이용하여 xe:1.0 이미지를 만들어라.
  3. mysql:5.7을 이용하여 root 패스워드를 test123으로 설정하고 기본 Databse 이름을 xe로 하고 컨테이너 이름은 db1 컨테이너를 배포하세요
  4. xe:1.0 이미지를 이용하여 xe1 컨테이너를 생성하되, "2"에서 만든 db1과 link 시키고 외부에는 8888 번 포트를 컨테이너의 80번 포트와 매핑시켜서 배포하세요
  5. 두 개의 컨테이너가 정상적으로 배포되었다면 http://211.183.3.X:8888/xe로 접속하면 설치화면으로 들어가게 된다. 필요한 내용을 입력해서 정상적인 게시판이 보이도록 하라.

Dokcerfile 작성

FROM centos:7
RUN yum clean all
RUN yum update -y
RUN yum -y install wget git httpd
RUN wget http://rpms.remirepo.net/enterprise/remi-release-7.rpm 
RUN yum -y localinstall remi-release-7.rpm
RUN yum -y install epel-release yum-utils
RUN yum-config-manager --enable remi-php74 #php7.4버전을 설치하겠다
RUN yum -y install php php-fpm php-gd php-mysql php-xml
RUN git clone https://github.com/xpressengine/xe-core.git /var/www/html/xe # /var/www/html/xe 에 xpressengine 클론
WORKDIR /var/www/html/xe
RUN mkdir files
WORKDIR /var/www/html
RUN chmod -R 707 xe
RUN chown -R apache:apache xe #루트가 아닌 apache에 권한 부여
EXPOSE 80
CMD httpd -D FOREGROUND # 컨테이너에서 아파치가 실행되도록 함

docker build -t xe:1.0 .
docker container run -d --name db2 -e MYSQL_ROOT_PASSWORD=test123 -e MYSQL_DATABASE=xe mysql:5.7
docker container run -d --name xe1 --link db1:mysql -p 8888:80 xe:1.0

실행코드

docker build -t xe:1.0 .
docker container run -d --name db2 -e MYSQL_ROOT_PASSWORD=test123 -e MYSQL_DATABASE=xe mysql:5.7
docker container run -d --name xe1 --link db1:mysql -p 8888:80 xe:1.0

접속

profile
안녕하세요

0개의 댓글