Docker 컨테이너에 Ubuntu 20.04를 설치하고, 초기 우분투 셋팅하는 방법에 대해 정리해보고자 한다. Docker는 Mac OS에서 사용한다.
# docker run 이미지명(ubuntu):태그(버전명, v20.04)
$ docker run ubuntu:20.04
# docker run: ubuntu:20.04 도커 이미지에 새로운 도커 컨테이너를 생성할게
# --name: 컨테이너이름은 ubuntu_20_04 로 만들게
# -dt: 컨테이너는 백그라운드에서 실행시킬거고(-d), 터미널을 사용할 수 있게 해줘(-t)
$ docker run --name ubuntu_20_04 -dt ubuntu:20.04
# docker exec: ubuntu_20_04 도커 컨테이너로 진입할게
# -it: 터미널을 통해 입출력이 가능하게 해줘
# /bin/bash: bash 쉘(shell)을 사용할거야
$ docker exec -it ubuntu_20_04 /bin/bash
$ apt-get update
$ apt-get install vim
리눅스/우분투를 사용할 때에, 보안 등의 이유로 root
계정 대신 user
계정을 생성하여 사용한다.
yoonsy
계정을 추가하고, 컨테이너에 접속할 때 해당 계정으로 접속하는 방법에 대해 정리해보고자 한다.
# adduser user이름
$ adduser yoonsy
# 전체 목록 확인하기
$ cat /etc/passwd
# useradd 커맨드를 통해 생성된 User 목록 확인하기
$ grep /bin/bash /etc/passwd
# sudo: 관리자 권한
$ usermod -aG sudo yoonsy
# docker exec: ubuntu_20_04 도커 컨테이너로 진입할게
# -it: 터미널을 통해 입출력이 가능하게 해줘
# -u: yoonsy 계정으로 진입하고 싶어
# /bin/bash: bash 쉘(shell)을 사용할거야
# docker exec -it -u User이름 컨테이너ID(또는 컨테이너이름) 쉘
$ docker exec -it -u yoonsy ubuntu_20_04 /bin/bash
# /root 디렉토리로 이동
$ cd /root
# vim을 활용하여 임의의 파일(yoonsy.txt)을 생성한다.
$ vim yoonsy.txt
호스트(Mac) 쉘에서, cp 명령어를 활용하여 파일을 복사한다.
# cp: copy
# ubuntu_20_04:/root/yoonsy.txt
# - ubuntu_20_04 컨테이너의 /root 디렉토리에 있는 yoonsy.txt 파일을
# 호스트의 /Users/yoonsy/Desktop 디렉토리로 복사할게.
$ docker cp ubuntu_20_04:/root/yoonsy.txt /Users/yoonsy/Desktop