어느 순간부터 갑자기 vscode 터미널을 실행시키면

 위와 같이 외부로 터미널 창이 빠져나왔다. 이를 바꿔주기 위해

https://code.visualstudio.com/docs/supporting/troubleshoot-terminal-launch 를 참고했다.

 

사이트 내용의 마지막 내용으로 해결했다.

 

참고로 legacy console 이란,

 Windows 10에서 이전 명령줄 도구의 사용자를 지원하도록 설계된 호환성 도구이다.

'Problem Solving' 카테고리의 다른 글

[VScode] python 실행하기  (0) 2022.01.02
[VScode] Keyboard Shortcuts  (0) 2022.01.02

https://linuxcontainers.org/lxd/introduction/

 

Linux Containers - LXD - Introduction

What's LXD? LXD is a next generation system container and virtual machine manager. It offers a unified user experience around full Linux systems running inside containers or virtual machines. It's image based with pre-made images available for a wide numbe

linuxcontainers.org

https://github.com/lxc/lxd

 

GitHub - lxc/lxd: Daemon based on liblxc offering a REST API to manage containers

Daemon based on liblxc offering a REST API to manage containers - GitHub - lxc/lxd: Daemon based on liblxc offering a REST API to manage containers

github.com

LXD(Linux Container Daemon)

  • LXC + security
  • Unprivileged container
  • Machine container
  • Container Hypervisor
  • 도커와 병행 가능
  • 요소
    • Daemon(Server), Command Line Client, Openstack Nova Plugin
  • kvm을 경쟁자로 본다.

'Container' 카테고리의 다른 글

[oslab] LXC  (0) 2021.09.13
[Docker] Docker Swarm  (0) 2021.09.11
[Docker] Docker Machine  (0) 2021.09.11
[Docker] Docker Compose  (0) 2021.09.11
[Docker] Docker Engine  (0) 2021.09.11

"Docker는 LXC라는 컨테이너 기술을 기반으로 만들어진 상위레벨의 컨테이너 기술"

https://linuxcontainers.org/

 

Linux Containers

LXC LXC is a well-known Linux container runtime that consists of tools, templates, and library and language bindings. It's pretty low level, very flexible and covers just about every containment feature supported by the upstream kernel. LXC is production r

linuxcontainers.org

https://github.com/lxc/lxc

 

GitHub - lxc/lxc: LXC - Linux Containers

LXC - Linux Containers. Contribute to lxc/lxc development by creating an account on GitHub.

github.com

 LXC(Linux Container)

  • 단일 리눅스 시스템에 동작하고 있는 프로세스를 격리시켜 각 프로세스마다 독자적인 리눅스 시스템 환경을 구축하는 것 ⇒ "OS 수준에서의 가상화"
  • Cgroups와 namespace를 결합하여 고립된 환경을 제공
  • LXC에서 가상화된 프로세스들은 모두 리눅스 시스템을 호환해야한다.
  • 장점
    • 특정 애플리케이션 환경만 따로 간편하게 구축 가능
    • 상대적으로 가볍다. Hypervisor를 이용하지 않아 오버헤드 발생이 적음.

 

'Container' 카테고리의 다른 글

[oslab] LXD  (0) 2021.09.13
[Docker] Docker Swarm  (0) 2021.09.11
[Docker] Docker Machine  (0) 2021.09.11
[Docker] Docker Compose  (0) 2021.09.11
[Docker] Docker Engine  (0) 2021.09.11

https://docs.docker.com/engine/swarm/

 

Swarm mode overview

 

docs.docker.com

 

Docker Swarm

  • docker container를 위한 클러스터링, 스케줄링 툴
  • 여러 개의 서버와 컨테이너 관리를 쉽게
  • 기능
    • docker engine 통합 관리(docker manager node에서 worker node를 통합 관리)
    • load balancing(worker node 접속 시 round robin 방식으로 worker node의 task를 연결)
    • task 개수 조절 기능(scale)
    • multi-host-networking(overlay network를 통해 task 간 사용할 수 있는 네트워크 제공)
    • 내장 DNS 서버 제공
  • 종류
    • docker warm mode: manager-node와 worker-node가 한 host에 공존
    • docker swarm: manager-node와 worker-node를 따로 구성(대규모)

docker swarm mode 물리적 구조

 

docker swarm mode의 load balancing

- 외부에서 어떤 host에 접근 하더라도 IPVSingress network를 사용하여 worker-node들이 제공하는 모든 task에 접속 가능

 

Docker Swarm Node

  • 도커나 스웜 모드에서 돌아가는 도커 서버
  • manager node / worker node

Manager node

  • 클러스터의 상태를 유지(뗏목 합의 알고리즘: 여러 서버 중 일부에 장애가 생겨도 나머지 서버가 정상적인 서비스를 할 수 있도록)
  • 스케줄링 서비스: worker node에게 컨테이너 배포
  • 스웜 모드 제공: docker swarm init

Worker node

  • 하나 이상의 manager node를 가짐
  • docker service create로 도커 스웜 실행("service 제공")
# 노드 상태를 drain으로 변경한다.
docker node update --availability drain <노드ID>

# 노드의 가용성을 확인한다.
docker node inspect --pretty <노드ID>

 

스케줄러가 매니저 노드에게 작업자 노드가 하는 task를 실행시키지 않기 위해서 매니저 노드의 가용성을 drain

스케줄러는 drain 상태의 노드에는 task를 맡기지 않고 active상태의 노드에게만 task 할당

'Container' 카테고리의 다른 글

[oslab] LXD  (0) 2021.09.13
[oslab] LXC  (0) 2021.09.13
[Docker] Docker Machine  (0) 2021.09.11
[Docker] Docker Compose  (0) 2021.09.11
[Docker] Docker Engine  (0) 2021.09.11

https://docs.docker.com/machine/

 

Docker Machine overview

 

docs.docker.com

 

Docker Machine

  • Dokcer Engine을 클라우드 컴퓨터, VM을 비롯한 원격지의 서버에 설치할 수 있도록 돕는 도구
  • 일반적으로 로컬 시스템에 Docker Machine을 설치하고 원격지 서버에는 Docker Engine을 설치하고 로컬과 통신

" Virtual Machine에 Docker 설치하고 이와 쉽게 통신하게 하는 프로그램"

 

사용법

https://kin3303.tistory.com/26

 

20. Docker Machine

Docker Machine Docker Machine 은 Docker Engine을 사용자 로컬 머신이 아닌 클라우드 컴퓨터, VM 을 비롯한 원격지의 서버에 설치할 수 있도록 돕는 도구이다. 1. Docker Engine이있는 호스트를 프로비저닝하고.

kin3303.tistory.com

❗ 실습은 차차 해보는 걸로 ❗

'Container' 카테고리의 다른 글

[oslab] LXC  (0) 2021.09.13
[Docker] Docker Swarm  (0) 2021.09.11
[Docker] Docker Compose  (0) 2021.09.11
[Docker] Docker Engine  (0) 2021.09.11
[Docker] Docker 구조  (0) 2021.09.11

https://docs.docker.com/compose/

 

Overview of Docker Compose

 

docs.docker.com

 

Docker Compose

  • 여러 개의 docker를 정의하고 실행하는 툴
  • YAML 파일로 여러 개의 docker 내부 속성을 설정하고 한 번에 실행시킴.
  • docker를 배치로 한 번에 실행시키는 것
  • 장점
    • Multiple isolated environments on a single host
    • Preserve volume data when containers are created
    • Only recreate containers that have changed
    • Variables and moving a composition between environments

사용법

docker-compose.yml 파일 생성

version: "3.8"
services:
	echo:
    	image: example/echo:latest
        ports:
        	- 9000:8000

version: 내용 해석을 위한 문법 버전(최신 버전이 좋다, https://docs.docker.com/compose/compose-file/)

echo: services 아래의 echo는 하나의 컨테이너

image: 도커 이미지

ports: 포트 포워딩

 

docker compose 실행

docker-compose up

 

컨테이너 종료

docker-compose up -d
docker-compose ls
docker-compose down

down 명령어로 한 번에 종료

 

(관련 명령어 정리)

https://www.daleseo.com/docker-compose/

 

Docker Compose 커맨드 사용법

Engineering Blog by Dale Seo

www.daleseo.com

 

'Container' 카테고리의 다른 글

[Docker] Docker Swarm  (0) 2021.09.11
[Docker] Docker Machine  (0) 2021.09.11
[Docker] Docker Engine  (0) 2021.09.11
[Docker] Docker 구조  (0) 2021.09.11
[Docker] 개념  (0) 2021.09.11

+ Recent posts