
참고 : AWS를 이용한 리눅스 설치 방법 (무과금) EC2 생성 ( AMI : Ubunto Server 22.04 LTS ) Elastic IP (탄력적 IP / 고정 IP) 생성 후 생성한 EC2 인스턴스에 할당. ※ Elastic IP를 생성후 인스턴스에 할

Ubunto 20.04 / 22.04등에서, Docker 설치 하기 설치 방법이 수시로 바뀌므로, 구글에서 docker install ubuntu 로 검색하여, 다음 링크의 가이드로 설치하는 것이 좋다. > https꞉//docs.docker.com/engine/i

유닉스/리눅스 기본 구성 이해 리눅스는 전역 네임스페이스 사용 ex. /media/floofy/dave.jpg 쉘(shell) : 사용자와 하드웨어 또는 운영체제간 인터페이스 사용자의 명령을 해석해서, 커널에 명령을 요청하는 역할을 한다. 관련된

리눅스의 쉘에서 Command로 실행되는 프로세스는 다음 세가지 스트림을 가지고 있다.표준 입출력 스트림 (Standard Input Stream) - stdin표준 출력 스트림 (Standard Output Stream) - stdout오류 출력 스트림 (Standa

리눅스는 기본적으로 다양한 프로세스가 실행된다.유닉스 철학 : 여러 프로그램이 서로 유기적으로 각자의 일을 수행하면서 전체 시스템이 동작하는 모델.Foreground process쉘(shell)에서 해당 프로세스 실행을 명령한 후, 해당 프로세스 수행 종료까지 사용자가

파일 복사 - cp 명령 Copy의 줄임말로 파일이나 디렉토리를 복사할 때 사용하는 명령어이다. > cp [옵션] [복사할 디렉토리/파일] [복사 될 디렉토리/파일] cp 명령어의 옵션을 제외한 인자 값은 생략이 불가능하다 경로를 지정하지 않으면 현 위치를 D

ubuntu 배포판 리눅스의 다양한 배포판 중 하나이다. 우분투 데스크탑 배포판(X윈도우 기반, GUI환경 기본 제공), 우분투 서버 배포판 존재 지원 기간이 짧은 일반 버전과 장기(5년)인 LTS(Long Time Support) 버전 존재 ubuntu 패키지 관리

VIM 에디터 이해 및 설치 Vi(Visual Editor) improved의 약자 Vi에 자동화, 시각화 메뉴등을 추가한 프로그램 Vim 이외에 Emacs도 존재. 대부분 개발자들은 두 에디터 중 하나 사용. > [설치 방법] 다음 명령어들을 순서대로 입력. su

LXC (LinuX Container) 단일 컴퓨팅 시스템이서 설치된 리눅스 운영체제 상에서, 다른 영역과 완전히 분리된 별도의 리눅스 시스템을 운영할 수 있는 리눅스 커널 기술이다. Linux 컨테이너는 운영체제 수준에서 영역과 자원 할당 (CPU, 메모리, 네트워

Docker Command 모든 도커의 명령은 CLI(Command Line Interface)를 이용하여 키보드로 직접 명령을 입력하는 형태이고, 다음과 같은 형식으로 이루어져 있다. > docker 명령] [옵션] [선택자 Docker는 Imag

컨테이너 생성 > docker create [docker image] 하나의 이미지로 여러 컨테이너를 생성 가능하다. 도커 이미지를 변경해도 이미 실행 중인 컨테이너는 영향을 받지 않는다. 각 이미지는 컨테이너로 만들어줘야 실행 가능한 상태가 된다. 이미지와 컨

Docker와 Web Server 웹서버로는 Apache(아파치), Nginx(엔진엑스)가 많이 사용된다. 이 중 대표적인 웹서버인 아파치를 기준으로 도커를 실행해본다 > Apache의 공식 Docker Image 아파치의 공식 이미지 이름은 httpd이다. >

Dockerfile Docker 이미지를 작성할 수 있는 기능이다. Dockerfile을 통해 해당 이미지의 구성에 대해 알 수 있다. 나만의 커스텀 이미지를 생성할 수 있고, 배포를 위해서도 많이 사용된다. Dockerfile 기본 문법 Dockerfile은 텍스

ENTRYPOINT ENTRYPOINT는 컨테이너가 반드시 실행해야 하는 명령어를 기입할 때 사용한다. 다른 방법들로 기입되는 CMD 명령어보다 우선 순위가 높아 덮어 씌워지지 않는다. docker run 시에 넣어지는 명령은 ENTRYPOINT에 작성된 명령의 인

docker history Dockerfile 작성 예시 > docker build --tag myweb . > docker history myweb > docker cp 컨테이너 내부의 파일을 호스트 pc에 갖고오기 > docker cp [컨테이너 이름

Docker로 Jupyter Notebook 띄우기 /home/jovyan 폴더를 호스트 pc의 /home/ubuntu/2021LEARN 폴더로 바인딩(공유) 한다.(기존 /home/jovyan 폴더의 내용은 호스트 pc의 /home/ubuntu/2021LEARN 폴더

Docker Compose 작성 기본 Docker Compose는 docker-compose.yml 파일을 작성하여 실행할 수 있고, 해당 파일은 YAML(야멜) 형식으로 작성한다. YAML 문법 "YAML Ain't Markup Language"의 약자로, JS

Docker Compose 여러 컨테이너를 묶어서 관리하기 위한 툴이다. 프론트엔드 서버, 데이터베이스 서버, 벡엔드 서버 각각을 도커 컨테이너로 작성하고, 연결하여 동작을 하기 때문에, 이들을 묶어 관리할 수 있는 Docker Compose 같은 컨테이너 관리 툴이

Docker Compose 실행/중지 DockerCompose 폴더 생성 > mkdir DockerCompose 해당 폴더로 이동 > cd DockerCompose docker-compose.yml 생성 후 편집모드 실행 > vi docker-compose

Docker Compose 사용법 예시 docker-compose.yml build 이미지를 Dockefile을 기반으로 작성할 시 사용한다. context Dockerfile이 위치하는 디렉토리명을 의미한다. dockerfile Docker

Web Server 클라이언트로부터 HTTP 요청을 받아들이고, 해당 요청에 대한 정적인 컨텐츠(이미지, 영상, 웹페이지, ...)를 반환하는 소프트웨어이다. 동적 데이터에 대한 요청을 받을 시에는 요청을 WAS(Web Application Server)로 전달하여 처

Apache 아파치는 아파치 재단에서 만든 오픈 소스 프로젝트 형식의 가장 유명한 웹서버이다. 다양한 운영체제에서 사용될 수 있고, 주류 리눅스와 윈도우즈 운영체제에서 사용된다. Apache 구동 방식 Apache는 Client 요청을 받을 시 MPM(Multi Pr

Nginx 설치 nginx.conf > cf. find -name nginx.conf 명령어를 통해 nginx.conf 파일의 위치를 찾는다. bc. 버전마다 nginx.conf 파일의 위치가 다를 수 있기 때문. nginx의 기본 설정 파일이다. 크게 user,

Proxy Server ? 클라이언트가 자신을 통해, 다른 네트워크 서비스에 접속하게 해줄 수 있는 서버를 의미한다. 클라이언트의 요청을 서버로 전달하고 서버의 응답을 클라이언트에세 다시 보내는 역할을 수행한다. 프록시 서버는 클라이언트와 서버 간에 중계 역할을 하

docker-compose.yml 구성 NGINX 프록시가 요청을 받아들이고 적절한 서비스로 라우팅하며, NGINX와 Apache는 프록시 서버를 통해 요청을 받아 처리할 수 있도록 설정한다. /nginx/nginx.conf:/etc/nginx/nginx.conf"는

docker-compose.yml 구성 nginxproxy의 nginx.conf "/blog/" 경로로 들어오는 요청을 처리한다. 여기서는 "docker-nginx" 업스트림 서버로 프록시한다. "/community/" 경로로 들어오는 요청을 처리한다. 여기서는

내부 서버에 요청하는 경로 변경 서버 구성의 편의상 이유 등으로 클라이언트가 proxy에 /blog/index.html로 요청했을 때, 내부 nginx에서는 자신의 서버 /index.html을 요청한 것처럼 경로를 변경하는 경우가 존재한다. > prpoxy 요청: lo

구축 서비스 흐름 nginx reverse proxy로 특정 경로로는 wordpress 서버 연결, 이외 경로는 별도 웹페이지를 구성하고 있는 내부 nginx 서버로 이동 시킨다. docker-compose.yml 설정 nginx.conf 작성 #rewrite ^

volume 상세 관리 및 설정 특정 호스트 pc와 연결하지 않고, 해당 볼륨을 컨테이너 삭제시에도 유지만 하고 싶은 경우, 다음과 같이 volumes 설정을 docker-compose.yml 파일 내에서 해줘야 한다. 볼륨 조회 도커 명령어 볼륨 조회 도커 명령어

사용하지 않는 컨테이너, 볼륨, 이미지, 네트워크 삭제 작업을 시작하기 전 여태 만들어놓고 사용하지 않는 컨테이너, 볼륨, 이미지, 네트워크들을 삭제해주는 작업을 해준다. >#모든 컨테이너 삭제 docker stop $(docker ps -a -q) docker rm

HTTPS를 지원하기 위해서는 인증서 발급이 필요하며, 보통 연단위 비용이 청구된다. 하지만 Let's Encrypt와 cerbot 서비스 이용 시 연단위 비용 없이 인증서를 발급 받을 수 있다. 대신 일정 기간(90일)마다 갱신이 필요하다.cerbot 프로그램을 제공

docker-compose.yml 해당 글 전에서 작성했던 docker-compose.yml 파일에서 --dry-run 옵션을 제외하여 작성하였다. nginx.conf (HTTPS 미지원) 직전 글에서 작성했던 nginx.conf와 동일하게 작성하였다. Dock

서비스 구조 다음 4개의 서버 컨테이너를 통해 HTTPS 지원 웹 · 워드프레스 블로그 서비스를 구축한다. Nginx Proxy (HTTPS) 내부 nginx 서버 (웹) 내부 WordPress 서버 (워드프레스 블로그) 내부 MySQL 데잍터베이스 (워드프레스

구현 이유 기존에 certbot을 통해 인증서를 발급받을 때 사용한 옵션인 --keep-until-expiring을 사용하면 90일 뒤, 즉 인정서고 만료된 직후 인증서를 다시 갱신을 하게 되는데, 이렇게 되면 인증서가 제대로 갱신이 안될 가능성이 높다. 따라서 한달