320x100
320x100

초기 세팅

ㆍDocker 설치 (Redhat Linux기준)

: https://2mukee.tistory.com/186

 

ㆍ도커 허브 가입 

: https://hub.docker.com/

: Free버전으로 가입 진행

: 도커 허브 내에서 레포지터리 생성 

 

ㆍ이미지 다운로드 및 확인

: docker search centos

: docker pull centos

: docker images

 

 

 

도커 이미지 생성을 위한 도커 파일 작성 (모해묵지 메인서버)

FROM centos
LABEL "main-server"="v0.1"

RUN yum -y update
RUN yum -y install npm
RUN curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.38.0/install.sh | bash
RUN source ~/.bashrc
RUN mkdir /var/mohaemookji

ADD main/ /var/mohaemookji/main

WORKDIR /var/mohaemookji/main
RUN npm -y install

EXPOSE 80
CMD node app.js -DFOREGROUND

docker build --tag mh_main_image:0.0 ./ 
: 도커 파일을 이미지로 빌드

: tag명 지정

 

docker run --name mh_main_container -p 80:80 --privileged -d mh_main_image:0.0
: 도커 이미지를 컨테이너로 생성 및 실행

: --name = 컨테이너 이름 지정

: -p = 80포트를 포트포워딩 

: --privileged = 컨테이너 내 권한 불필요

: -d = 백그라운드(데몬)으로 실행

 

 

docker exec -it mh_main_container bash --privileged

: 도커 컨테이너의 터미널에 접속

: -it = 터미널 실행

: 나올때는 exit

 

 

 

 

도커 파일 관리 쉘 파일 작성 (kill_main_server.sh)

#!/bin/bash

docker stop mh_main_container
docker rm mh_main_container
docker rmi mh_main_image:0.0
rm -f /home/ec2-user/Mohaemookji_Docker/Dockerfile

 

 

 

모해묵지 데이터베이스 서버 세팅

: docker pull mongo

: docker run --name mongodb -d -p 27017:27017 mongo

 

 

 

 

Refference

 

centos이미지로 컨테이너 생성 후 systemctl 사용방법

docker run 으로 특별한 옵션 없이 컨테이너를 실행시키면 systemctl 실행시 퍼미션 에러가 발생하게 된다. 해결 방법은 두가지인데 컨테이너 생성시 /bin/bash 대신 /sbin/init을 백그라운드 모드로 실행

npd-58.tistory.com

 

 

가장 빨리 만나는 Docker 7장 - 9. ADD

 

pyrasis.com

 

 

가장 빨리 만나는 Docker 4장 - 3. build 명령으로 이미지 생성하기

 

pyrasis.com

 

 

Docker 강좌 - 4. 도커 이미지1 - 도커이미지 만들기

Docker Images docker registry에서 필요한 docker image를 검색할 수 있다. [root@cent154 ~]# docker search centos NAME                               DESCRIPTION     ..

youngmind.tistory.com

 

 

도커를 사용하면서 자주 쓰는 명령어 (Docker)

도커 서비스 실행 sudo systemctl start docker 시스템 부팅 시 자동으로 도커 서비스 실행 sudo systemctl enable docker sudo 없이 사용 (사용자를 docker 그룹에 추가) sudo usermod -aG docker $USER 도커 컨..

hanryang1125.tistory.com

 

 

Docker Centos systemctl command 가능 하도록 실행

Centos로 다운받은 도커는 deamon을 실행 할 때 권한 문제로 인하여 cgroup을 이용 할 수 없어 systemctl command를 사용 할 수 없다.

medium.com

 

 

도커(Docker)로 CentOS 이미지 systemctl 사용하기 - 2 [failed to get D-Bus connection: Operation not permitted 에러

Docker로 CentOS 이미지 systemctl 사용하기 전의 게시글에서는 ubuntu이미지를 다운받아 컨테이너로 만든 후에 apache 웹서버를 만들어보았다. 전의 게시글을 보지 못했다면 한번 봐보는 것도 나쁘지 않

this-programmer.tistory.com

 

 

Docker mongo image 'Connection refused' from other container

I'm new to docker. I'm trying to create a MongoDB container and a NodeJS container. My file looks: version: '2' services: backend: image: node:5.11-onbuild ports: - "3001:3001"

stackoverflow.com

 

 

[Error]System has not been booted with systemd as init system (PID 1). Can't operate.

도커에서 systemctl 사용시 아래와 같은 에러를 볼수 있다. * 시스템이 초기화 시스템 (PID 1)로 systemd로 부팅되지 않았습니다. 작동 할 수 없습니다 [root@fb00f4e75552 bin]# systemctl start nginx System ha..

blog.jojonari.dev

 

300x250
728x90

'Container > Docker' 카테고리의 다른 글

도커 허브 사용법  (0) 2021.09.07
리눅스 Docker 설치  (0) 2021.09.07
도커 데몬  (0) 2021.08.30
도커 파일 작성법  (0) 2021.08.30
도커 이미지 생성  (0) 2021.08.27