Dockerfile 작성 및 도커 이미지를 빌드하는 방법이다.
Dockerfile에는 대략적으로 아래와 같은 내용이 기술되어 있다.
1. FROM: centos7 이미지를 사용한다.
2. RUN: yum을 이용해서 필요한 패키지를 설치한다.
3. ARG: 변수에 값을 설정하기 위해서 사용한다.
4. RUN: OS 그룹 및 유저를 생성한다. (sudo를 사용할수 있도록 추가)
5. RUN: 디렉토리를 생성 및 권한 추가
# Dockerfile |
FROM centos:centos7 MAINTAINER Programmer RUN yum -y update; RUN yum -y install java-1.8.0-openjdk \ java-1.8.0-openjdk-devel \ net-tools \ which \ initscripts \ openssh-server \ sudo \ tree ARG GROUP=project ARG USER=service ARG USER_PASS=service RUN groupadd ${GROUP} RUN useradd -g ${GROUP} ${GROUP} RUN useradd -G ${GROUP} ${USER} RUN echo "${USER_PASS}" | passwd ${USER} --stdin RUN echo "${USER} ALL=(ALL) ALL" >> /etc/sudoers RUN mkdir -p /system RUN mkdir -p /log RUN chown ${GROUP}:${GROUP} /system RUN chown ${GROUP}:${GROUP} /log RUN chmod 775 /system RUN chmod 775 /log ENV JAVA_HOME /usr/java/jdk1.8.0_171-amd64/jre/ |
# build docker image
$ docker build -t test_image .
# Run container
$ docker run -d \
--name=test_container \
--cap-add=SYS_ADMIN \
-e "container=docker" \
-v /sys/fs/cgroup:/sys/fs/cgroup:ro \
--tmpfs /run \
--tmpfs /run/lock \
test_image \
/sbin/init
# Start bash in container
$ docker exec -it test_container /bin/bash
'docker' 카테고리의 다른 글
Docker에서 mysql 설치 및 접속 (0) | 2019.03.28 |
---|---|
컨테이너 접속시 locale 에러 해결 (0) | 2019.01.04 |
Ubuntu, CentOS에 기본 패키지 설치 (0) | 2018.12.28 |
Failed to get D-Bus connection 에러 해결 (0) | 2018.12.27 |
특정 CentOS 버전 컨테이너 생성하기 (0) | 2018.12.27 |