질문/조언팁/리소스 공유

기존에 적었던 내용을 합치고, HTTPS 환경 또는 로컬(localhost), SSL 없는 환경에 설치하는 방법에 대해 알려드리겠습니다.

 

조건

 

1. 서버 : Ubuntu 20.04 LTS 또는 CentOS 8 

 

2. 도메인 설정에서 네임서버 설정을 해줍니다.

 

rhymix.png

 

위와 같이 www, port(도커관리도구 portainer 접속용), pma(phpmyadmin 접속용) 도 추가로 해줍니다.

 

3. 80, 443 포트는 열어줍니다. 클라우드 서버에서는 서버 뿐만 아니라 웹패널에서도 열어줘야 합니다.

 

4. sudo 권한이 있는 계정으로 진행해주세요. (root 는 보안상 추천하지 않습니다.)

 

 

Ubuntu 20.04 LTS

 

(1) SSL 인증서 자동발급 및 https 환경 구축

 

sudo apt update -y && sudo apt upgrade -y && sudo apt install curl git -y && sudo apt autoremove -y

 

위 명령어로 패키지 리스트를 업데이트하고, 필수 패키지를 설치합니다.

 

curl -o dc https://raw.githubusercontent.com/woosungchoi/docker-rhymix/main/dc && bash dc setup && rm -f dc

 

위 명령어로 소스를 받고 스크립트를 실행합니다.

 

몇가지 입력사항이 있습니다. 입력이 끝나면 자동으로 설치가 됩니다.

 

 

(2) 로컬(localhost) 또는 SSL 없는 환경 구축(IP 기반도 가능) - > 포트를 따로 지정하여 포트로 접속

 

sudo apt update -y && sudo apt upgrade -y && sudo apt install curl git -y && sudo apt autoremove -y

 

위 명령어로 패키지 리스트를 업데이트하고, 필수 패키지를 설치합니다.

 

curl -o dcl https://raw.githubusercontent.com/woosungchoi/docker-rhymix/master/dcl && bash dcl setup && rm -f dcl

 

위 명령어로 소스를 받고 스크립트를 실행합니다.

 

몇가지 입력사항이 있습니다. 입력이 끝나면 자동으로 설치가 됩니다.

 

 

CentOS 8

 

(1) SSL 인증서 자동발급 및 https 환경 구축

 

sudo yum -y update && sudo yum install -y curl git

 

위 명령어로 패키지 리스트를 업데이트하고, 필수 패키지를 설치합니다.

 

curl -o dcc https://raw.githubusercontent.com/woosungchoi/docker-rhymix/main/dcc && bash dcc setup && rm -f dcc

 

위 명령어로 소스를 받고 스크립트를 실행합니다.

 

몇가지 입력사항이 있습니다. 입력이 끝나면 자동으로 설치가 됩니다.

 

 

(2) 로컬(localhost) 또는 SSL 없는 환경 구축(IP 기반도 가능) -> 포트를 따로 지정하여 포트로 접속

 

sudo yum -y update && sudo yum install -y curl git

 

위 명령어로 패키지 리스트를 업데이트하고, 필수 패키지를 설치합니다.

 

curl -o dccl https://raw.githubusercontent.com/woosungchoi/docker-rhymix/master/dccl && bash dccl setup && rm -f dccl

 

위 명령어로 소스를 받고 스크립트를 실행합니다.

 

몇가지 입력사항이 있습니다. 입력이 끝나면 자동으로 설치가 됩니다.

 

 

설치사항

 

Rhymix latest(including rewrite configuration) : 라이믹스 최신버전 다운로드 및 짧은 주소 설정 완료
Php7.4 latest docker image(alpine) : php7.4 최신버전
MariaDB latest docker image : mariadb 최신버전
Nginx latest docker image(alpine) : nginx 최신버전
Certbot latest docker image : Let's Encrypt SSL 발급 최신버전
Redis latest docker image(alpine) : Redis 최신버전
Phpmyadmin latest docker image(fpm-alpine) : phpmyadmin 최신버전
Portainer latest docker image : 도커 관리도구 Portainer 최신버전

 

설치사항에 있듯이,

 

SSL 인증서 자동 발급 및 자동 갱신

Redis 설치로, 라이믹스 캐시 Redis 설정 가능(Host:redis, port:6379)

FFMPEG 설치로, GIF움짤 MP4 변환가능

 

 

참고링크

 

상세설명 : https://www.wsgvet.com/ubuntu/125

 

소스 : https://github.com/woosungchoi/docker-rhymix

 

 

PS. 기존 글은 삭제하였습니다. 양해바랍니다.

글쓴이 우성짱

profile
반갑습니다. 우성짱입니다.
Nginx와 Docker에 관심이 많습니다.
홈페이지 : https://www.wsgvet.com
깃 허 브 : https://github.com/woosungchoi
  • profile
    도메인 설정에서 123.123.123.123 이걸로 해야 되나요?
  • profile profile
    그건 예시입니다. 본인의 서버 외부IP주소를 넣으면 됩니다.
  • profile profile
    도메인을 먼저 만들고 해야 되는군요.
    해보구 다시 질문 드리겠습니다.
    감사합니다.
  • profile profile
    도메인이 있으면 SSL까지 가능하구요

    도메인이 없다면 로컬에서도 가능합니다
  • profile profile
    우성짱님!! 이거 정말 좋네요 ㅎㅎ
    SSL까지 설치가 완료되다니!! 최고네요 ㅎㅎ

    SSH에서 DB명이랑 입력다하고
    라이믹스 설치할때 입력한 DB명이랑 비밀번호를 입력하니깐
    이런 에러 메시지가 뜨는데 해결방법이 있을까요?
    DB ERROR 2002 : No such file or directory
  • profile profile
    DB : mysql

    DB server address : db

    DB server port : 3306

    DB ID : 설치할때 지정했던 DB유저 이름

    DB Password : DB 비밀번호

    DB name : DB이름

    이렇게 셋팅하면 됩니다.
  • profile profile
    다른건 다 됐는데 라이믹스 설치에서 도저히 못넘어 가겠네요 ㅠㅠ
    phpmyadmin은 지정했던 DB명으로 접속이 되는데 라이믹스 설치할때는 동일한 DB명으로 안됩니다.

    phpmyadmin 접속시 SSL적용이 안됩니다.
  • profile profile

    phpmyadmin은 되는데 라이믹스는 안된다니...

    cat .env 해보면 직접 입력했던 값이 뜹니다.

    해당 내용으로 해보시겠어요?

    phpmyadmin 접속할때 https가 안붙는다는 말인가요?

    아니면 주소창에는 붙는데 phpmyadmin 상에 표시가 https가 안된다고 뜨는지?

     

    우분투인가요? 센토스인가요?

  • profile profile
    아..제가 상세내용을 안적었쿤요 ㅠ_ㅠ 번거롭게 죄송합니다.
    오라클 클라우드 무료티어
    우분트 20.04 (미니멀 아님)
    도메인 연결 후 ssh로 우성짱님께서 남겨주신 명령어 2줄 순차적으로 입력 후 도메인으로 접속하니 라이믹스 설치화면은 나왔습니다. 설치진행 과정에서 DB ID, 패스워드, DB명 입력 후 "다음"을 눌렀으나 에러 2002가 떳습니다.

    공용ip로 접속을 하니 phpmyadmin으로 연결 되더라구요.
    거기서 DB ID, 패스워드 입력하니 로그인이 됩니다.

    phpmyadmin을 아이피 주소로 접속해서 그런지 https가 안떠서 보안에 취약하다는 메시지가 브라우저에 떳습니다.
  • profile profile
    1. 라이믹스 설치할 때

    DB server address : db

    위와 같이 입력하셨나요? localhost가 아닙니다.

    2. pma.domain.com 처럼 주소로 접속이 안되나요? 왜 IP로 접속하신건가요?

    3. port.domain.com 접속은 되나요?
  • profile profile
    앗!! localhost가 아닌가요?
    그게 문제였나 봅니다.

    라이믹스 설치할려구 ip주소로 접속을 했더니 phpmyadmin으로 접속이 되더라구요.
    그래서 도메인으로 접속을 하니 라이믹스 설치화면으로 떴습니다.

    다시 한번 시도해보겠습니다.
  • profile profile
    넵.. 위에 댓글에 이미 적었는데...

    설치는 db 입력하면 될거구요.

    pma.도메인이나

    port.도메인은 접속 되나요?
  • profile profile
    우성짱님 말씀대로 하니깐 잘됩니다 ㅎㅎ
    라이믹스 설치 성공했습니다 ㅎ

    pma.도메인.com
    port.도메인.com
    모두 SSL 적용된 상태로 정상접속 됩니다.

    아까전에 phpmyadmin 접속시 SSL 적용 안된다는건
    아이피 주소로 접속하니깐 그렇게 되네요.

    pma.도메인.com으로 접속했을때는 정상적으로 됩니다 ㅎㅎ

    정말 감사드립니다.
  • profile profile
    넵 다행이네요 ㅎㅎㅎ

    저도 오라클 클라우드에서 잘쓰고 있어요~
  • profile profile
    지금까지 많이 도움 주셨는데 한가지만 더 여쭤봐도 될까요?ㅠ
    아이피 주소로 접속했을때 사이트 도메인주소로 이동하게 하고 싶습니다.

    제일 처음 도메인 설정할때 pma, port, www 설정시 TTL은 모두 600으로 해서 그런걸까요?
  • profile profile
    ./nginx/conf.d/ip.conf

    위 파일을 만들고

    server {
    listen 80;
    server_name xxx.xxx.xxx.xxx;
    location / {
    rewrite ^ https://domain.com;
    }
    }
    server {
    listen 443 ssl http2;
    server_name xxx.xxx.xxx.xxx;
    location / {
    rewrite ^ https://domain.com;
    }
    include conf.d/ssl-conf;
    }

    위 내용을 넣으면 됩니다.

    xxx.xxx.xxx.xxx 에는 IP 주소

    domain.com 은 가고 싶은 도메인 주소입니다.

    그 후에

    sudo docker-compose up -d --force-recreate --no-deps nginx

    위와 같이 재생성해주면 됩니다.
  • profile profile
    우성짱님 진짜 짱입니다 ㅎㅎ

    감사합니다.
  • profile profile
    넵 ㅎ 잘 쓰세요!