Aws Ec2로 만들어진 Ubuntu 서버에 Docker 설치하는 법을 알아보겠습니다.

1. Docker 설치 명령어

# 패키지 업데이트
sudo apt update

# https관련 패키지 설치
sudo apt install apt-transport-https ca-certificates curl software-properties-common

# docker repository 접근을 위한 gpg 키 설정
curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo apt-key add -

# docker repository 등록
sudo add-apt-repository "deb [arch=amd64] https://download.docker.com/linux/ubuntu focal stable"

# 업데이트
sudo apt update

# 도커 설치
sudo apt install docker-ce

# 설치 확인
docker --version

2. sudo 없이 Docker 명령어 사용

# 현재 사용자를 docker group 포함
sudo usermod -aG docker ${USER}

# 터미널 재시작 후 결과 확인
id -nG

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

[Centos] aws linux centos에 docker로 jenkins 띄우기  (0) 2023.08.08
.net core React docker image 만드는 법  (0) 2023.04.03
Docker 명령어  (0) 2023.01.29
Docker 설치 - linux편  (0) 2023.01.29
Docker 설치 - windows편  (0) 2023.01.29

centos 서버 자체에 jenkins 설치 하는 방법에 이어 docker로 jenkins를 띄우는 방법에 대해서 알아보겠습니다.

 

1. EC2 인스터스 시작 및 설정

1) 보안 그룹 설정 시 테스트를 위해 로컬 ip에 8080(기본 Jenkins 포트) 22(SSH)를 열어 둡니다.

2. EC2 인스턴스 연결

1) SSH로 인스턴스 연결

3. Docker 설치

sudo yum update -y
sudo yum install -y docker
sudo service docker start
sudo usermod -a -G docker ec2-user

4. Jenkins Docker 이미지 실행

docker run -d -p 8080:8080 -p 50000:50000 --restart=always jenkins/jenkins:lts

5. Jenkins 초기 설정

docker exec [컨테이너 ID] cat /var/jenkins_home/secrets/initialAdminPassword

6. Jenkins 접속 확인

http://[EC2 인스턴스의 퍼블릭 IP]:8080

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

[Ubuntu] Docker 설치하기  (0) 2023.10.23
.net core React docker image 만드는 법  (0) 2023.04.03
Docker 명령어  (0) 2023.01.29
Docker 설치 - linux편  (0) 2023.01.29
Docker 설치 - windows편  (0) 2023.01.29

.net core 기반 React 프로젝트를 Docker로 빌드 후 배포를 해보려고 합니다.

기본으로 제공되어있는 Dockfile로는 빌드가 진행되지 않고 실패가 떨어지게 될 것 입니다.

 

RUN apt-get updateRUN apt-get install -y curlRUN apt-get install -y libpng-dev libjpeg-dev curl libxi6 build-essential libgl1-mesa-glxRUN curl -sL https://deb.nodesource.com/setup_lts.x | bash -RUN apt-get install -y nodejs

React는 node.js 위에서 동작을 하고 npm으로 설치되어있는 여러가지 라이브러리가 필요하기 때문인데요.

 

ASP.NET Core 및 React.js를 포함한 Visual Studio 컨테이너 도구 | Microsoft Learn를 참고하여 DockerFile를 수정해보겠습니다.

 

1. 추가해야 될 명령어

RUN apt-get update
RUN apt-get install -y curl
RUN apt-get install -y libpng-dev libjpeg-dev curl libxi6 build-essential libgl1-mesa-glx
RUN curl -sL https://deb.nodesource.com/setup_lts.x | bash -
RUN apt-get install -y nodejs

2. 완성된 DockerFile

#See https://aka.ms/containerfastmode to understand how Visual Studio uses this Dockerfile to build your images for faster debugging.

FROM mcr.microsoft.com/dotnet/aspnet:6.0 AS base
WORKDIR /app
EXPOSE 80
EXPOSE 443
RUN apt-get update
RUN apt-get install -y curl
RUN apt-get install -y libpng-dev libjpeg-dev curl libxi6 build-essential libgl1-mesa-glx
RUN curl -sL https://deb.nodesource.com/setup_lts.x | bash -
RUN apt-get install -y nodejs

FROM mcr.microsoft.com/dotnet/sdk:6.0 AS build
RUN apt-get update
RUN apt-get install -y curl
RUN apt-get install -y libpng-dev libjpeg-dev curl libxi6 build-essential libgl1-mesa-glx
RUN curl -sL https://deb.nodesource.com/setup_lts.x | bash -
RUN apt-get install -y nodejs
WORKDIR /src
COPY ["ProjectSPA1/ProjectSPA1.csproj", "ProjectSPA1/"]
RUN dotnet restore "ProjectSPA1/ProjectSPA1.csproj"
COPY . .
WORKDIR "/src/ProjectSPA1"
RUN dotnet build "ProjectSPA1.csproj" -c Release -o /app/build

FROM build AS publish
RUN dotnet publish "ProjectSPA1.csproj" -c Release -o /app/publish

FROM base AS final
WORKDIR /app
COPY --from=publish /app/publish .
ENTRYPOINT ["dotnet", "ProjectSPA1.dll"]

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

[Ubuntu] Docker 설치하기  (0) 2023.10.23
[Centos] aws linux centos에 docker로 jenkins 띄우기  (0) 2023.08.08
Docker 명령어  (0) 2023.01.29
Docker 설치 - linux편  (0) 2023.01.29
Docker 설치 - windows편  (0) 2023.01.29

이번 시간에는 docker image, container 명령어를 알아보려고 합니다.

 

* 이미지와 컨테이너는 도커에서 사용하는 가장 기본적인 단위이며

이미지와 컨테이너는 1:N 관계입니다.

 

1. 이미지 (Image)

 

docker에서 image란 컨테이너 생성시 필요한 요소로

컨테이너의 목적에 맞는 바이너리와 의존성이 설치되어 있으며

여러 개의 계층으로 된 바이너리 파일로 존재합니다.

 

가) docker image 이름 구성

{repository_name}/{image_name}:{version}

{image_name} 제외하고는 생략이 되며
{repository_name} 생략 시 docker hub로 인식
{version} 생략 시 lastest로 인식

 

나) docker image 명령어

# 저장소로 부터 image 받아오기
docker image pull [option]<image-name>[:tag]

# local docker image 확인
docker image ls [option] [repository]
docker image ls
docker images

# docker image 상세 정보
docker image inspect <image-name>[:tag]

# docker tag를 사용하여 새이름으로 이미지를 복사
docker image tag <origin-image-name> <new-image-name:tag>

# docker hub에 공개되어 있는 이미지 조회
docker search [option] <keyword>

# docker image 삭제
docker image rm <option> <image-name>

# 사용하지 않는 docker image 삭제
docker image prune [-a|-f]

# 모든 docekr image 삭제
docker rmi $(docker images -q)

 

 

2. 컨테이너(Container)

 

호스트와 다른 컨테이너로부터 격리된 시스템 자원과 네트워크를 사용하는 프로세스이며

이미지는 읽기 전용으로 사용하여 변경사항은 컨테이너 계층에 저장합니다.

즉 컨테이너에서 무엇을 하든 이미지는 영향을 받지 않습니다.

 

가) docker container 명령어

# container 생성
docker create -i --name <container-name> <image-name>

# container 실행
docker start <container-name>

# 모든 container 보기
docker ps -a
docker container ls -a

# container 시작
docker start <container-name>

# container 정지
docker stop <container-name>

# container 삭제
docker rm <container-name>

# container 강제 삭제
docker rm -f <container-name>

# container 생성 및 시작
docker run -d -p [container-port]:[image-port] <image-name>

# container 전체 삭제
docker rm $(docker ps --filter 'status=exited' -a -q)
docker rm -f $(docker ps -qa)

# container 전체 삭제 2
docker stop $(docker ps -a -q)
docker rm $(docker ps -a -q)

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

[Ubuntu] Docker 설치하기  (0) 2023.10.23
[Centos] aws linux centos에 docker로 jenkins 띄우기  (0) 2023.08.08
.net core React docker image 만드는 법  (0) 2023.04.03
Docker 설치 - linux편  (0) 2023.01.29
Docker 설치 - windows편  (0) 2023.01.29

Docker 설치 - windows편 (tistory.com)

 

Docker 설치 - windows편

windows에서 docker를 설치하기 위해서 여러가지 방법이 있습니다. 그 중 가장 간단한 docker hub 설치하는 법을 정리해보도록 하겠습니다. 1. docker hub 설치 https://www.docker.com/products/docker-desktop/ Download Do

nitpick92.tistory.com

Docker란 애플리케이션을 신촉하게 구축, 테스트 및 배포할 수 있는 소프트웨어 플랫폼입니다.

 

linux에 docker를 설치하는 법을 알아보려고 합니다.

 

1. linux에 docker 설치하는 방법

# 1.패키지 업데이트
sudo yum install -y yum-utils

# 2. yum-utils 설치후 Docker 레포지토리를 등록
sudo yum-config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repo

# 3.최신 도커 설치
sudo yum install docker --disablerepo=docker-ce-stable

# 4.도커 설치 작업이 잘 되었는지 버전 확인
docker -v

# 5.도커 시작
sudo service docker start

# 6.docker.sock 권한
sudo chmod 666 /var/run/docker.sock

# 7.도커 그룹에 사용자 추가 -> docker가 그룹명, ec2-user가 사용자명
sudo usermod -aG docker ec2-user

# 8. docker login
docker login -u [ID]

 

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

[Ubuntu] Docker 설치하기  (0) 2023.10.23
[Centos] aws linux centos에 docker로 jenkins 띄우기  (0) 2023.08.08
.net core React docker image 만드는 법  (0) 2023.04.03
Docker 명령어  (0) 2023.01.29
Docker 설치 - windows편  (0) 2023.01.29

windows에서 docker를 설치하기 위해서 여러가지 방법이 있습니다.

그 중 가장 간단한 docker hub 설치하는 법을 정리해보도록 하겠습니다.

 

1. docker hub 설치

https://www.docker.com/products/docker-desktop/

 

Download Docker Desktop | Docker

Docker Desktop is available to download for free on Mac, Windows, or Linux operating systems. Get started with Docker today!

www.docker.com

 

2. wsl2 installation is incomplete 오류 해결

https://wslstorestorage.blob.core.windows.net/wslblob/wsl_update_x64.msi

설치 후 재부팅 하면 해결이 됩니다.

 

3. 실행 확인

 

* WSL(Windows Subsystem for Linux)란?

- Windows 운영체제에서  Linux 실행파일들을 함께 사용할 수 있도록 호환성을 추가하는 아키텍처라 할 수 있다.

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

[Ubuntu] Docker 설치하기  (0) 2023.10.23
[Centos] aws linux centos에 docker로 jenkins 띄우기  (0) 2023.08.08
.net core React docker image 만드는 법  (0) 2023.04.03
Docker 명령어  (0) 2023.01.29
Docker 설치 - linux편  (0) 2023.01.29

+ Recent posts