도커컨테이너 생성 :
상기 코드에서 systemctl 사용 권한을 갖기 위해 필요한 부분은
--privileged=true 와 /sbin/init 이다
/* 도커파일을 생성한다. */
vim Dockerfile
/****************/
FROM ubuntu:22.04
ARG DEBIAN_FRONTEND=noninteractive
ENV TZ=Asia/Seoul
RUN sed -i 's/kr.archive.ubuntu.com/mirror.kakao.com/g' /etc/apt/sources.list
RUN apt update \
&& apt install -qq -y init systemd \
&& apt install -qq -y build-essential \
&& apt install -qq -y tzdata \
&& apt install -qq -y vim curl \
&& apt-get clean autoclean \
&& apt-get autoremove -y \
&& rm -rf /var/lib/{apt,dpkg,cache,log}
CMD ["/sbin/init"]
/*********************/
/* 도커 빌드 */
docker build --tag cbwstar/ubuntu-init:22.04 .
/* 도커 컨테이너 실행 */
/* 셋팅시에는 -v 옵션 사용하지 말자 save해서 load할때 공유폴더가 없어서 에러가 난다 */
-- docker run -d --name ubuntu22 -p 2222:22 -p 8080:8080 -p 3306:3306 -p 8888:8888 --privileged=true --hostname ubuntu22 -v /docker_share/airflow:/home/airflow/airflow -v /docker_share/postgresql:/etc/postgresql/14/main cbwstar/ubuntu-init:22.04 /sbin/init
docker run -d --name ubuntu -p 2222:22 -p 8080:8080 -p 3306:3306 -p 8888:8888 --privileged=true --hostname ubuntu22 cbwstar/ubuntu-init:22.04 /sbin/init
/* 도커 접속 */
접속 : docker exec -it ubuntu bash
/* 외부접속 ssh 설치 */
apt install vim
apt install nano
apt install telnet
apt install net-tools
apt install -y openssh-server
systemctl start ssh.service
systemctl enable ssh.service
/* root 접속허용 */
nano /etc/ssh/sshd_config
PermitRootLogin yes yes 로 변경
systemctl restart ssh.service
'시스템 > 리눅스' 카테고리의 다른 글
백업받은 airflow 설정및 기동 (0) | 2023.05.15 |
---|---|
ubuntu22.04 airflow2.6.0설치 (1) | 2023.05.15 |
Docker postgres 설치 (0) | 2023.05.10 |
Docker 오라클 19c설치 (0) | 2023.05.10 |
호스트가 다른 도커 컨테이너 통신 (0) | 2023.05.10 |
댓글