DevJong12

[Ubuntu]리눅스 체험을 위한 Docker Container 세팅 본문

프로젝트

[Ubuntu]리눅스 체험을 위한 Docker Container 세팅

Jong12 2023. 5. 1. 10:15
728x90

제작 계기

수업 방식이 Virtual Box로만 물리적인 설치를 통해서 진행을 하는 방식이었으나 내장비는 M1.... 가상머신돌릴라면 돌릴수야 있지만 귀찮은 환경이었다.

 

나는 그냥 말로 하는 설명을 듣기만되는 입장이라 문제가 없지만... 혹시나 Mac을 사용해 수업을 듣고싶고 편하게 날리고 재설치하는걸 희망하는 분들을 위한 컨테이너를 제작해봤다.


Git Repo

https://github.com/donsonioc2010/ubuntu_study_for_dev

 

GitHub - donsonioc2010/ubuntu_study_for_dev: 리눅스를 처음 사용해보는 사람을 위해서 개발시 자주 사용하

리눅스를 처음 사용해보는 사람을 위해서 개발시 자주 사용하는 패키지를 Base로 설정한 docker-compose입니다. - GitHub - donsonioc2010/ubuntu_study_for_dev: 리눅스를 처음 사용해보는 사람을 위해서 개발시

github.com


설치되는 패키지 종류

 

먼저 해당 컨테이너를 사용하는 사람은 개발자를 희망하는, 개발자인 사람들들 위한 컨테이너다보니 개발공부를 할때 자주 사용하게 될 패키지를 주로 담게 되었다.
  • 개발 언어
    • gcc
    • g++
    • jdk17
  • DB
    • Maria : latest
    • sqlite3
  • WS
    • nginx, apache2
  • IDE
    • vim
  • etc
    • ssh-server, openssl, locale

초기 설정

  1. root의 계정 패스워드는 1234입니다.
    1. Docker에서 직접 스크립트를 실행해 패스워드를 변경합니다. Dockerfile을 수정시 변경 가능합니다.
  2. root의 접속의 경우 docker exec -it /bin/bash를 통한 실행만이 아닌, ssh를 통한 접속이 가능합니다.
    1. /etc/ssh/sshd_config의 PermitRootLogin항목 해제를 Dockerfile에서 진행합니다. 
    2. 희망하지 않는 경우 주석처리 하면 됩니다.
  3. 설치와 함께 nginx, ssh, Mariadb가 실행됩니다.
  4. MariaDB의 root패스워드는 1234입니다.
    1. 사용자 추가가 안되어 있어 root만 사용가능하며, Ubuntu접속한 후에만 사용가능합니다.
    2. 호스트OS에서 접속희망시에는 사용자 추가해야합니다.

포트 구성

HOST Container Description
44444 22 SSH 
2525 25 SMTP 
80 80 HTTP
11110 110 POP3
443 443 HTTPS
53306 3306 Maria

사용방법은 ReadMe참고하길 바라며 Docker의 경우 특정 명렁어는 컨테이너에서 막는 경우가 있으니..해당 문제는 직접 해결하기 바란다...

 

 

만들었던과정에 대한 회고를 해보자면..

PermitRootLogin과 Root계정에 대한 패스워드를 변경하는 과정을 만드는게 정말 힘들었던 것 같다.

ssh는 분명히 켜졌는데 Access Denied가 지속적으로 발생을 했었고, 이후 늦게나마 해당 옵션을 알게 된 것이었다.

해당 옵션을 켜는 스크립트도 오래 걸렸는데 이후 Root패스워드를 변경해보고자 할때 echo를 통한 변경을 해보려했었다.

echo도.. 계속 안되서 멘탈이 깨지는 과정중 갑자기 어느순간부터 적용이 되었는데 캐시문제인지 무슨문제인지 파악도 안되던게...ㅋㅋ..

 

오랜만에 뭔갈 만들어봤는데.. 만드는 과정자체는 재미있긴 한듯하다..

728x90

'프로젝트' 카테고리의 다른 글

파이널프로젝트 결과물  (0) 2020.11.01
세미 프로젝트 결과물  (0) 2020.11.01
Comments