도커를 시작하려면 Linux 환경이 필요하다.
Windows Subsystem for Linux(WSL)가 있지만, 불안정한 경우가 많고, 가상환경 위에 리눅스 서버를 띄울 수도 있지만 AWS를 사용하면 쉽게 서버를 띄울 수 있다.
AWS EC2 설정
프리티어에서 제공하는 옵션을 사용한다.
Quick Start에 등록되어 있는 Ubuntu를 사용한다.
key Pair(RSA, .pem)을 생성하고 기본적인 보안 설정인 Firewall 설정을 한다.
EC2 EIP 설정
EC2를 생성하고 EIP, 탄력적 IP를 설정하지 않으면 public IP는 인스턴스를 중단하고 재시작하면 변한다. 따라서
Networks/Elastic IPs를 생성하고 생성한 EC2에 연결해준다.
"탄력적 IP 주소는 정적이며 시간이 지남에 따라 변경되지 않습니다." 참고: AWS 공식 홈페이지 Elastic IP
puttygen
puttygen은 .pem키를 .ppk키로 변환해주는 프로그램이다.
윈도우즈 환경에서는 .pem 확장자를 읽을 수 없으니, 변환해준다.
EC2를 생성할 때, key pair을 다운로드 하여, 이를 putty를 통해 변환한다.
save private key로 저장한다.
Putty
Putty는 만든 EC2, 리눅스 서버에 연결하여 터미널창을 열 수 있도록 해준다.
SSH/Auth/Credentials을 눌러 puttygen에서 생성한 private key를 넣고
Session 에서 save를 하여 언제든 쉽게 서버를 Open할 수 있도록 만들어준다.
간단한 리눅스 명령어 실행
clear : 터미널 화면을 지우는 명령어
whoami : 자신의 아이디 확인
sudo apt-get update : 루트사용자 권한으로 패키지 목록을 갱신하는 명령어
pwd : 현재 경로 확인
cd : 파일 이동
ex) cd ubuntu/ : 다음 폴더인 ubuntu경로로 이동
ls : 해당 디렉토리에 있는 파일 목록 확인
ls -al : 해당 디렉토리에 있는 파일 목록 확인(숨김폴더까지).
(숨김 폴더의 경우 앞에 .이 붙는다. ex) .cache )
cat : 파일 내용이 출력된다.
ex) cat mysql.cnf : mysql.cnf 파일 내용이 출력된다.
rm : 파일 및 폴더 삭제
chmod : 파일 권한 변경하는 명령어
ex) chmod 400 mysecurity.pem : 소유자에게만 mysecurity.pem 파일에 대한 읽기 권한 부여
ex) chmod -R 777 directory : 모든 사용자에게 전체파일에 대한 모든 권한 부여
d[rwx][---][---]: 앞에 붙은 d는 파일이라는 의미이다.
리눅스는 파일 권한을 소유자의 권한 /그룹의 권한 /기타 사람들의 권한으로 나누는데,
r은 읽기, w:는 쓰기 , x는 실행이다.
따라서 drwx------ 같은 경우는, .cache 라는 파일은 숨겨져있으며, 소유자만 읽고 쓰고 실행할 수 있는 파일이라는 의미이다.
파일 권한 뒤 ubuntu ubuntu의 의미: 앞 ubuntu는 파일 소유자를 뜻하며, 뒤에 있는 ubuntu의 부분은 그룹이 누구인지를 나타낸다.
해당 글은 다음 강의의 내용을 참고한 글임을 밝힙니다. 자세한 내용은 다음 강의에서 확인해볼 수 있습니다.
인프런, 잔재미 코딩, ⌜풀스택을 위한 도커와 최신 서버 기술(리눅스, nginx, AWS, HTTPS, flask 배포) [풀스택 Part3]⌟