Docker 에서 Gnuboard 올리기.. 정보
Docker 에서 Gnuboard 올리기..본문
설치할 파일:
Docker
구성방식.
Linux(Ubuntu) - NginX - MariaDB - PHP
일명.. LEMP 스택..
0.
https://www.docker.com/get-started
에서 YES,YES,YES,YES,YES,YES,YES....
해서 설치를 합니다. 설치도중에 2번정도 재부팅이 일어날 수 있습니다.
설치하시기 위해서는 Docker에 회원가입을 해야합니다.
도커가 설치되었는지 확인하기 위해서 Powershell을 실행하셔서 Docker -v 라고 쳐주시기 바랍니다.
사진과 같이 잘나오면 설치는 된겁니다. 정상작동하는지 확인하기 위해서 Docker run hello-world 라고 쳐주시기 바랍니다.
그림과 같이 잘 나온다면 성공입니다.
docker ps -a 라고 쳐주시고, hello-world 라는 이미지로 만들어진 container의 id를 docker rm 명령으로 제거 해 주세요.
1.
docker run -it ubuntu:18.04 bash 라고 쳐주세요.
이후에
apt-get update 라고 쳐주세요.
설치가 끝나면,
apt-get install nano vim nginx mariadb-server php7.2 php7.2-fpm
라고 쳐서 설치 해 주세요.
이후 설치가 모드 끝나시고 난 후에.
service --status-all 이라고 쳐보시면 다음과 같을 거에요.
2.
Ctrl+Z 키를 1번 누르고, Ctrl+C 키를 한번 눌러 주세요.
이제 여기서 우리는 도커 이미지 파일을 만들거에요. docker ps 라고 쳐주세요.
그러면 위와같이, IMAGE가 ubuntu:18.04 인 container 가 있을거에요. container ID는 전부다 다르니까 확인하시고 docker commit 24f04(본인 containerid값) gnuboard(이미지로 저장할 이름) 이라고 쳐주세요.
commit이 다 되면.
docker image ls 라고 쳐보시면 확인할 수 있어요.
gnuboard라는 이름으로 추가된걸 알 수 있습니다.
이제 image가 추가된걸 봤으니 필요가 없어진 컨테이너는 없애버립시다.
docker stop 24f(본인 컨테이너의 ID)
docker rm 24f(본인 컨테이너의 ID)
그러면 컨테이너는 사라질겁니다.
3.
https://github.com/gnuboard/gnuboard5
그누보드 github에 가셔서 다운로드를 받아주세요.
ZIP을 푸셔서 바탕화면에 Dockers 라는 폴더로 만들어주세요.
그러면 아마 다음과 같은 디렉토리 구조를 볼 수 있을거에요.
C:\Users\Developer\Desktop\Dockers\gnuboard5
gnuboard5에 index.php랑 이것저것 다풀리는 거에요.
4.
그러면 이제 powershell에서 해당 폴더로 갑시다.
cd desktop; cd dockers;cd gnuboard5;
라고 치시면 이동하실 수 있을겁니다.
이제 여기에서 다음과 같은 명령어를 쳐줍니다.
docker run -v ${PWD}:/var/www/gnuboard5 -p 8000:80 -p 8002:8002 --name myGnuboard -it gnuboard bash
만약 이런식으로 오류가 난다면, 다음의 명령어를 입력 해 줍니다.
docker stop ${docker ps -a -q}; docker rm ${docker ps -a -q}
모든 컨테이너를 삭제하는 명령입니다. 아무튼.
성공적으로 우리가 만든 컨테이너를 run하면 bash 창으로 진입할 수 있습니다.
5.
만약에 실수로 bash 창에서 벗어났다고 해도 걱정하실 것 없습니다.
docker attach myGnuboard(해당 컨테이너의 name이나 ID)라고 쳐주시면 다시 접근할 수 있습니다.
아니면 docker exec -it myGnuboard bash 라고 치시면 새로운 bash창이 실행이 됩니다.
6.
컨테이너 내부의 bash 창에서
cd /etc/nginx/sites-enabled 라고 쳐주세요.
nano myphp 라고 쳐주세요.
또는 vim myphp 라고 쳐주세요.
에디터는 더 편하신걸로 해주세요.(두개다 안편하시다고요;;? 그럼... ....음..)
그리고 다음과 같이 작성 해 주세요.
다 작성하셨으면, Ctrl+X 키를 누른다음에 Y 키를 눌러서 저장 해 주세요.
VIM 이시라면, :wq 가 되겠죠.
7.
cd /var/www/ 명령어를 쳐주세요.
저 초록색 불이 들어오는 친구가.. 우리의 윈도우 바탕화면에 갈려있는 그누보드와 폴더공유하고 있습니다.
chmod 707 gnuboard5 라고 쳐주세요.
쳐주시고 난 뒤에, ls -al 이라고 쳐보시면 다음과 같이 보입니다.
맨앞의 인자가 drwxrwxrwx 가 되었습니다. 좋아요..
8.
service --status-all 이라고 쳐주세요.
여기에서, service mysql start 라고 쳐주세요.
다음에 mysql에 접속해주세요.
다음의 명령을 쳐주세요.
CREATE USER 'user'@'%' IDENTIFIED BY 'user';
CREATE DATABASE g5db DEFAULT CHARSET UTF8;
GRANT ALL PRIVILEGES ON g5db.* TO 'user'@'%';
그러면 아무런 오류도 없이 다 된걸거에요.
다음으로 exit; 이라고 쳐주셔서 DB Shell에서 나와주세요.
이제
service mysql restart
service nginx start
service php7.2-fpm start
9.
이제 우리의 윈도우 컴퓨터에서 크롬창을 열고
localhost:8002
으로 접속하시면 돼요.
gnuboard 설치하기에서, data 폴더를 만들라고 나올텐데. 만들어 주시면 돼요
cd /var/www/gnuboard5 에서.
mkdir data 로 만들어 주시고.
chmod 707 data 라고 쳐주시면 돼요.
10.
이제 이렇게 나올텐데. 우리가 만든 것으로 적절하게 입력해주면 되겠죠.
User 이름은 user
Password는 user
DB는 g5db
로 해주시면 되겠죠?..
6