MYSQL, WORDPRESS 설치
MYSQL, WORDPRESS 설치 하기 위하여 NGINX 를 설치해준 docker-compose.yml 파일을 다시 편집하기 위해서 열어줍니다.
sudo vim docker-compose.yml
docker-compose 파일 설정
services:
db:
image: mysql:latest
container_name: db
restart: unless-stopped
ports:
- "3306:3306"
env_file: .env
environment:
- MYSQL_DATABASE=wordpress
volumes:
- db_data:/var/lib/mysql
networks:
- web-network
wordpress:
image: wordpress:6.2.0-php8.2-fpm
container_name: wordpress
restart: unless-stopped
env_file: .env
environment:
- WORDPRESS_DB_HOST=db:3306
- WORDPRESS_DB_USER=$MYSQL_USER
- WORDPRESS_DB_PASSWORD=$MYSQL_PASSWORD
- WORDPRESS_DB_NAME=wordpress
volumes:
- wordpress:/var/www/html
networks:
- web-network
webserver:
image: nginx:latest
container_name: webserver
restart: unless-stopped
ports:
- "80:80"
volumes:
- ./nginx-conf:/etc/nginx/conf.d
- wordpress:/var/www/html #nginx에도 wordpress 파일을 access 할 수 있도록 volume container를 추가해 줍니다.
networks:
- web-network
volumes:
db_data:
wordpress:
networks:
web-network:
driver: bridge
- env_file: .env : 환경변수 파일을 추가해 줍니다. 여기서는 mysql의 루트 비밀번호와 워드프레스 계정 이름, 계정 비밀번호를 설정해줄 예정 입니다.
- -MYSQL_DATABASE=wordpress : docker가 mysql 컨테이너를 만들때 wordpress 라는 이름의 database를 같이 만들어 줍니다.
- -db_data:/var/lib/mysql : mysql의 data가 저장되는 docker의 volume container를 만들어 줍니다.
- image: wordpress:6.2.0-php8.2-fpm : 요항목은 wordpress 컨테이너를 설치해 주는데 php가 같이 묶여있는 워드프레스 컨테이너를 설치해 주었습니다.
- – WORDPRESS_DB_HOST=db:3306 : wordpress 의 database 호스트를 설정해 줍니다. 앞에서 만들어준 mysql db 이름을 써주었고 접속 포트 3306번으로 접속합니다.
- – WORDPRESS_DB_USER=$MYSQL_USER : wordpress 에서 사용하는 mysql 유저이름 입니다. 환경설정 파일에서 유저이름을 불러옵니다.
- – WORDPRESS_DB_PASSWORD=$MYSQL_PASSWORD :위의 유저의 비밀번호 입니다. 이것도 환경설정 파일(.env)에서 불러옵니다.
- – WORDPRESS_DB_NAME=wordpress : mysql에서 만들어둔 database이름 입니다. wordpress에서 사용 합니다.
- – wordpress:/var/www/html : wordpress에서 기본적으로 시작되는 디렉토리를 대상으로 wordpress라는 이름의 docker volume container를 생성해 줍니다.
- volumes: 항목아래 db_data:, wordpress: 를 추가해서 docker의 volume container를 생성합니다.
MY_SQL 환경설정(.env) 파일 생성
MYSQL_ROOT_PASSWORD=your_root_passoword
MYSQL_USER=your_user_name
MYSQL_PASSWORD=your_user_password
.env 파일을 만들어서 위의 내용을 입력해 줍니다. MYSQL에서 사용되는 루트 패스워드와 유저이름, 유저 패스워드입니다.
nginx.conf 파일 설정 변경
server {
listen 80;
index index.php index.html index.htm;
server_name _;
root /var/www/html;
location ~ /.well-known/acme-challenge {
allow all;
root /var/www/html;
}
location / {
try_files $uri $uri/ /index.php$is_args$args;
}
location ~ \.php$ {
try_files $uri =404;
fastcgi_split_path_info ^(.+\.php)(/.+)$;
fastcgi_pass wordpress:9000;
fastcgi_index index.php;
include fastcgi_params;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
fastcgi_param PATH_INFO $fastcgi_path_info;
}
}
- root /var/www/html : root 디렉토리를 wordpress index.php 파일이 있는 위치로 변경 합니다.
- location ~ /.well-known/acme-challenge : 나중에 SSL 인증서 임시파일용으로 미리 만들어 둡니다. CERBOT으로 사이트 권한 확인용 으로 사용 예정 입니다.
- location /{} : 접속 하는 요청에 대하여 try_file 뒤에 있는 path 순서대로 반환합니다.
- location ~\.php$ : ~ 로 시작하는 것은 정규식(regular expression)을 사용 한다는 의미입니다. 정규식에서 \.php$ 의미는 .php로 끝나는 파일을 의미합니다. 따라서 php 파일의 경우 {} 안에 있는 요청을 수행 합니다.
- try_files $uri =404 : 요청한 URI가 실제 있는지 확인하고 없으면 404(페이지없음) 을 반환합니다.
- fastcgi_split_path_info ^(.+\.php)(/.+)$ : fastcgi_split_path_info : 이건 nginx 안데 fastcgi_script_name, fastcgi_path_info 라는 두개의 내장 변수가 있는데 요 두개의 변수를 정의해 줍니다. ^(.+\.php) 이 표현은 script_name, (/.+)$은 위에 붙는 path_info 를 나타내 줍니다.
- fastcgi_pass wordpress:9000 : FastCGI 서부 위치를 표시해 줍니다. 여기서는 wordpress 컨테이너 안에 같이 들어있기때문에 워트프레스를 지정해줬습니다.
- fastcgi_index index.php : / 로 끝나는 리퀘스트가 왔을때 index.php를 반환해 줍니다.
위에 nginx-conf 파일 까지 모두 작성후
docker-compos.yml 파일 위치 폴더로 가서 아래와 같이 입력 해 줍니다.
cd /webserver
sudo docker-compose up -d
모든 설치가 완료 되고나서 브라우저에 public ip를 입력 하면 다음과 같이 wordpress 초기 화면이 나오게 됩니다.
핑백:[OCI]: 넥스트 클라우드 DOCKER COMPOSE 설치 하기 - Lynny House
핑백:[OCI]: CERTBOT 이용 하여 HTTPS 무료 SSL 인증서 발급 받기 - Lynny House
It works a lot like a growth hormone, controlling the formation of pro inflammatory markers in tissue and decreasing the activity of the genes involved in lipogenesis fat cell creation buy priligy 30mg chloroquine increases toxicity of indapamide by QTc interval
order priligy online Advanced Research Networks JPJSCCA20190008, to Kei Sato; JSPS Research Fellow DC1 19J20488, to Izumi Kimura; xxxx, to Keiya Uriu; JSPS Leading Initiative for Excellent Young Researchers LEADER to Terumasa Ikeda; The Tokyo Biochemical Research Foundation to Kei Sato; Mitsubishi Foundation to Terumasa Ikeda; Shin Nihon Foundation of Advanced Medical Research to Mako Toyoda and Terumasa Ikeda; Tsuchiya Foundation to Takashi Irie; a Grant for Joint Research Projects of the Research Institute for Microbial Diseases, Osaka University to Akatsuki Saito; an intramural grant from Kumamoto University COVID 19 Research Projects AMABIE to Terumasa Ikeda; Intercontinental Research and Educational Platform Aiming for Eradication of HIV AIDS to Terumasa Ikeda; and Joint Usage Research Center program of Institute for Frontier Life and Medical Sciences, Kyoto University to Kei Sato