ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • Ubuntu에서 KKuTu(끄투) 서버 구축하기
    프로그래밍/개발 2018. 8. 12. 20:09

    $ sudo apt install git

    깃허브의 KKuTu(끄투) 저장소를 빠르게 클론해오기 위해서 git을 설치한다.

    $ sudo apt install nodejs npm postgresql

    Node.js와 npm, PostgreSQL을 설치한다. 맥에서는 Node.js와 npm이 함께 설치되던데 우분투에서는 따로 설치해줘야 한다.

    $ git clone https://github.com/JJoriping/KKuTu.git

    KKuTu를 clone한다.

    $ cd KKuTu/

    clone한 위치로 이동한다.

    $ sudo -u postgres createdb main
    $ sudo -u postgres psql --quiet main < ./db.sql

    main이라는 이름의 db를 만들고 db.sql을 데이터베이스에 넣어주면...! 데이터베이스 서버가 완성된다.

    $ cd Server/lib/
    $ npm install

    package.json에 명시된 npm 의존성 모듈을 설치한다.

    $ sudo -u postgres psql
    postgres=# ALTER USER postgres with encrypted password '1234';
    postgres=# \q
    $ sudo /etc/init.d/postgresql restart
    
    postgresql에 패스워드를 설정해야 한다. 필자의 경우는 1234로 설정했다(어디까지나 임시이니 실제 서비스를 굴릴 때는 복잡하게 설정하자). ALTER USER postgres with encrypted password '1234';를 실행하면 ALTER ROLE이라고 나오는데 이는 신경쓰지 않아도 된다.

    $ psql -U postgres -h localhost

    위 명령어를 실행했을 때 postgres에 대한 패스워드를 입력하라고 나온다면 제대로 설정된 것이다. \q를 입력하여 다시 나오자.

    다음으로는 KKuTu/Server/lib/sub/에 auth.json과 global.json을 만들어줄 차례다.

    auth.inc.json과 global.inc.json 파일을 그냥 복붙해도 굴러는 간다(그냥 귀찮으니 일단 이렇게 하자).

    이때 global.json의 PG_PASSWORD에 방금 설정한 postgres의 패스워드를 입력해 두어야 한다.

    다음으로 KKuTu/Server/lib/Web/auth/의 auth_facebook.js, auth_google.js, auth_kakao.js, auth_naver.js, auth_twitter.js 파일 이름 끝에 .DISABLED를 붙여준다. 아직 소셜로그인을 사용하고 있지 않으므로 이를 설정하는 것이다. auth_facebook.js.DISABLED와 같은 방법으로 파일명을 설정하면 된다.

    $ sudo node lib/Game/cluster.js 0 1

    KKuTu/Server에서 위 명령어를 실행해서 게임 서버를 시작한다. 경로에 주의하고 같은 옵션을 주면 당연히 다른 위치에서도 실행이 가능하다.

    $ sudo node lib/Web/cluster.js 1

    터미널을 하나 더 열고 KKuTu/Server로 이동한 뒤 위를 실행한다. 이때 sudo 권한이 없다면 에러가 발생할 수 있으니 주의하자.

    게임 서버와 웹 서버를 실행한 뒤 웹브라우저를 열고 http://localhost로 접속하면 구축된 끄투 페이지가 나온다. 이제 하나씩 고쳐나가면 되겠지?

    서버를 종료하려면 각각의 터미널 창에 ^C(Control+C)를 보내면 된다.

    댓글

Designed by Tistory