Redmine 은 Docker 를 사용해 설치하고, DB 연동은 이미 설치된 MariaDB를 사용한다.
Redmine 은 docker-compose 를 사용하여 실행한다.
MariaDB 설치 및 docker 관련 세부 명령어는 이 글에서 다루지 않는다.
♣ docker 및 docker redmine 설치
docker, docker-compose 을 설치한다.
$ sudo apt install docker
$ sudo apt install docker-compose
$ sudo apt install docker-compose-v2
♣ MariaDB 에 Redmine 계정 생성
Redmine 자료가 저장될 MariaDB 에 Redmine 에서 사용할 계정을 만든다.
$ mysql -u root -p
로그인 되면,
1. 사용할 database 를 생성함. (아래 "redmine" 은 예제임. 수정 가능)
2. redmine DB 계정 및 패스워드 생성 (아래 "redmine" 계정 및 PW는 예제임. 수정가능)
3. 계정에 권한 부여
4. flush~
MariaDB> create database redmine ; MariaDB> create user redmine@'%' identified by 'qwerty123@' ; MariaDB> grant all privileges on redmine.* to 'redmine'@'%' ; MariaDB> flush privileges ;
♣ docker-compose 작성
compose 가 저장될 디렉토리를 하나 만들어준다. 아래는 예시이다.
$ mkdir docker-redmine
$ cd docker-redmine
compose 파일을 작성한다. 파일 생성 후,
$ vi compose.yaml
그리고 아래처럼 작성해 준다.
아래 version 은 Compose File 버전이다. 이 값은 설치된 docker 버전을 따른다.
제 PC엔 windows8 이 깔려있습니다. 여기에 VirtualBox를 설치하였고, VirtualBox 에 리눅스(Fedora)를 설치하였습니다. 한줄요약 : 윈도우에서 VirtualBox를 이용해 리눅스를 돌리고 있음. 위와같이 리눅스를 설치하고 윈도우에서 putty 를 이용해 리눅스에 ssh로 접속하여 작업합니다. 쉬운 브리지 어댑터 먼저 썰을 풉니다~
1. 브리지 어댑터 (Bridge Adapter)
Virtualbox 에서 Fedora를 실행하기 전에 아래와 같이 네트워크에서 브리지 어댑터를 선택합니다. (아래 이미지는 리눅스를 실행한 후에 캡쳐를 한 것인데 실행 전에 선택해야합니다.)
이 경우, PC가 공유기로부터 IP를 받는 경우, 리눅스 또한 공유기로부터 IP를 받습니다. 윈도우의 IP가 192.168.10.xx 라면, 리눅스의 IP 또한 192.168.10.xx 가 됩니다. 브리지 어댑터로 설정하면 아래와 같은 구조라고 생각하면 됩니다.
위에 언급했듯이 전 윈도우에서 putty 를 이용해 리눅스에 접속하는 걸 선호합니다. 브리지 네트워크로 설정할 경우, 공유기가 없다면? 리눅스가 IP를 할당받지 못해 윈도우에서 리눅스로 접속할 방법이 없더군요. 공유기를 함께 챙기면 되겠지만 그러지 못한 상황이라면... NAT 설정을 통해 이를 극복할 수 있습니다.
2. NAT
NAT의 개념은 저도 정확히 이거다 말하기가 애매한데요. 그냥, 경험을 통해 아~ 이렇구나 했습니다. 아니면 댓글로 알려주세요~ NAT 설정은 저 위에 Virtualbox 네트워크 설정에서 브리지 어댑터 대신 NAT를 선택하면 됩니다. Virtualbox 를 설치하면 dos 에서 VirtualBox Host-Only Network 를 확인할 수 있습니다. C:\>ipconfig
결론부터 얘기하면, 윈도우에서 리눅스로 접속하고 싶을 때, 위 주소 192.168.56.1 로 접속하여 리눅스로 접속할 수 있습니다.
(이 개념 찾는게 제일 힘들었네요. 전 계속 리눅스의 10.0.2.15로 접속하려고 시도했거든요. 그런데 막상 검색해도 쉽게 안나오던 정보였습니다.)
이에 몇가지 설정이 필요합니다. VirtualBox 에서 NAT 로 설정한 후, 리눅스를 설치하고 ifconfig 하면 아래와 같이 10.0.x.15 주소를 확인할 수 있습니다.
이 주소는 NAT 설정 후 나타나는 주소입니다. 저 위에 윈도우에서 리눅스로 접속하기 위해 192.168.56.1 IP 를 사용한다고 했는데요. 이 192.168.56.1 이 리눅스의 10.0.2.15 IP와 연결되게 됩니다. 그러므로 윈도우에서 192.168.56.1 로 접속을 시도하면 리눅스로 연결 되게 됩니다.
이제 NAT 설정 시, 그림을 다시 그려보면 아래와 같이 됩니다. (이 개념은 지극히 개인적인... 고로 틀렸을지도 모릅니다. ㅜ.ㅠ )
브리지 어댑터의 경우, linux 가 바로 공유기에 연결된 개념이었는데 NAT의 경우, 위와 같은 구조이기에 공유기랑 상관없는 구조입니다. 공유기가 없는 환경에서 리눅스에 접속할 필요가 있을 경우, NAT를 사용하면 되겠지요~ 이제 마지막 과정입니다. 192.168.56.1 과 10.0.2.15 사이에 포트포워딩을 해 주어야 합니다. 아래와 같이 포트포워딩을 선택합니다.
그러면 아래와 같은 그림이 나옵니다. 아래 제가 설정한 경우입니다. 이미지 오른쪽의 + 버튼을 클릭하여 규칙을 추가하시면 됩니다.
전 putty 를 이용해 리눅스에 접속하여 작업하기에 22번 포트를 포워딩했습니다. 그리고 리눅스에서 인터넷을 사용하기 위해 80번 포트를 포워딩했습니다. 기타 환경에 맞게 추가하여 주시면 됩니다. 위와 같이 설정한 후에 putty에서 192.168.56.1 로 접속시도하면 리눅스로 연결됩니다.