728x90

Infra/Docker 15

[Docker] 도커를 통한 3-tier 구조 구축

1. DB: MariaDB (PORT 3306) [Docker] 도커에 MariaDB 설치하기 docker pull mariadb mariadb 이미지를 내려받는다. docker images mariadb 이미지가 잘 받아졌는지 확인한다. docker run -p 3306:3306 --name mariadb -e MARIADB_ROOT_PASSWORD={비밀번호} -d mariadb -p 3306.. da2uns2.tistory.com [MariaDB] MariaDB 시작하기 - 테이블 만들고 조회하기 환경은 Docker 입니다. (+ 명령 프롬프트) docker exec -it mariadb /bin/bash mariadb 컨테이너 실행하기 mysql -u root -p db 접속하기 show data..

Infra/Docker 2021.12.02

[Docker] 도커 컨테이너 외부 통신: host.docker.internal

도커 컨테이너에서 localhost를 실행하면 컨테이너 내의 localhost이므로 PC의 localhost(127.0.0.1)와는 다르다. 그럼 PC의 localhost와 통신하기 위해선 어떻게 해야할까? host.docker.internal을 이용하면 된다. PC localhost에 8080번 포트를 통해 웹 서버를 띄워놓고 확인을 해보겠다. apt-get update apt-get install curl 도커 컨테이너에서 통신 확인을 위해 curl을 설치한다. curl localhost:8080 curl: (7) Failed to connect to localhost port 8080: Connection refused 도커 네트워크 내에서는 8080번 포트를 이용하지 않으므로 당연히 연결이 거부된..

Infra/Docker 2021.12.01

[Docker] 도커 컨테이너 ssh 설정 (1. 일반 이미지, 2. Linux 이미지)

두 가지 방법에 대해 다루겠다. 1. 일반 이미지 사용 시 2. 리눅스 이미지 사용 시 (CentOS, Ubuntu 등) 1. 일반 이미지 사용 시 apt-get update apt-get install net-tools vim openssh-server apt-get을 사용하기 위해선 먼저 update를 해줘야 한다. net-tools: 네트워크 관련 vim: 에디터 openssh-server: ssh 관련 vi /etc/ssh/sshd_config PermitRootLogin을 찾아 주석을 해제하고 yes로 변경한다. service ssh start ssh 시작 netstat -ntl Active Internet connections (only servers) Proto Recv-Q Send-Q Lo..

Infra/Docker 2021.12.01

[Docker] CentOS 깃 서버(Git Server) 컨테이너 구축하기

다른 컨테이너의 작업물을 깃 서버 컨테이너에 올릴 수 있도록 할 것이다 [CentOS] Linux Git Server 구축하기 목차 1. Git 설치 2. 저장소 생성 3. 계정 생성 4. git 서버로 키 등록 5. 테스트 1. Git 설치 yum install git root 계정으로 로그인한 후, yum install git을 입력하면 설치가 시작된다. 중간중간 Is this ok [y.. da2uns2.tistory.com 다음 글을 참고해 깃 서버를 구축할 것이다. docker run --privileged -d --name mycent7 centos:7 init centos 환경에서 깃 서버를 구축하기 위해 먼저 centos 이미지를 통해 컨테이너를 생성한다. docker exec -it my..

Infra/Docker 2021.11.22

[Docker] Apache - Tomcat(SpringBoot) 연동하기 (mod_jk)

Web Server와 WAS(Web Application Server)의 분리를 위해, Web Server인 Apache와 WAS인 Tomcat을 연동하는 방법에 대해 알아보도록 하겠다. Web Server vs WAS 먼저, Web Server와 WAS의 차이에 대해서 알아보자. 웹 서버는 정적인 컨텐츠(html, css, js)를 제공하는 서버이다. ex) Apache, Nginx WAS는 DB 조회나, 어떤 로직을 처리해야 하는 동적인 컨텐츠를 제공하는 서버이다. ex) Tomcas, Jeus 즉, 웹서버와 WAS의 차이는 어떤 타입의 컨텐츠를 제공하느냐의 차이이다. 웹서버와 WAS는 각각 독립적으로 존재할 수 있다. 대부분의 WAS는 정적인 컨텐츠를 제공해주고 있기 때문에, 웹 서버 없이 WAS만..

Infra/Docker 2021.11.19

[Docker] Apache Web Server 구축하기

docker pull httpd httpd 이미지를 다운받는다. httpd는 아파치 HTTP Server 공식 이미지이다. 실습을 위해 프로젝트 폴더를 생성한다. 파일 구성은 다음과 같다. Apache Web Server + Tomcat Web Application Server 다음과 같이 index.html 파일을 구성한다. FROM httpd COPY ./public-html/ /usr/local/apache2/htdocs Dockerfile을 다음과 같이 생성한다. docker build -t myapache . Terminal을 통해 Dockerfile 경로에서 다음과 같이 입력해 myapache 이미지를 만든다. docker run -d --name apache -p 8009:80 myapach..

Infra/Docker 2021.11.19

[Docker] Docker Compose 사용해 web, db 컨테이너 연결하기 (springboot, mariadb) (2-tier 구조)

목차 1. Docker Compose 생성하기 2. Local에서 db의 데이터 띄우는 간단한 web 구현하기(SpringBoot + MariaDB) 3. jar 파일 만들기 4. Dockerfile 만들기 5. 실행시키기 6. db 컨테이너 초기 설정 7. web 컨테이너 실행시키기 만약 도커가 설치되어있지 않다면 다음 글을 참고해주세요. [Docker] 도커 시작하기 - 1. 도커 설치하기 (tistory.com) 도커의 기본적인 명령어를 모른다면 다음 글을 참고해주세요. [Docker] 도커 시작하기 - 2. 도커 기본 명령어 (tistory.com) 1. Docker Compose 생성하기 먼저, 원하는 위치에 프로젝트 폴더를 생성하고, docker-compose.yml 파일을 만든다. versi..

Infra/Docker 2021.11.17

[Docker] Docker Compose 사용하기

Docker Compose를 이용하면 여러개의 컨테이너로 구성된 애플리케이션을 하나의 파일에 정의해두고 한 번에 올리거나 내릴 수 있다. 이러한 편리함 때문에 Docker Compose는 특히 로컬 개발 환경이나 테스트 자동화 환경에서 많이 사용되고 있다. Docker Compose를 사용하면 실행에 필요한 옵션을 docker-compose.yml이라는 파일에 적어둘 수 있고, 컨테이너 간 실행 순서나 의존성도 관리할 수 있다. docker-compose.yml 파일 생성하기 먼저, 프로젝트의 최상단 디렉토리(프로젝트 루트)에 docker-compose.yml 파일을 만든다. version: '3' services: db: images: volumes: environment: web: build: env..

Infra/Docker 2021.11.17

[Docker] Docker Network 사용하기

Docker Network 도커 컨테이너 간 연결을 하기 위해서는 Docker Network를 사용해야 한다. 즉, Docker Network란 같은 호스트 내에서 실행중인 컨테이너 간 연결할 수 있도록 돕는 논리적 네트워크 개념이다. 공식문서를 보면 --link는 곧 사라질 예정이며, 해당 기능 대신 Network를 사용하도록 권장하고 있다. 종류 - Default Bridge Network Docker에서 제공하는 네트워크로, 실제 프로덕션 환경에 적합하다고 볼 수는 없다. 간단히 개발환경에서 테스트를 위해 사용하면 좋다. - User-Defined Bridge Networks 같은 Docker Host 내에서 실행중인 컨테이너 간 연결할 수 있는, 사용자 정의 브릿지 네트워크이다. 실제 프로덕션 환..

Infra/Docker 2021.11.17
728x90