# docker hub

24개의 포스트
post-thumbnail

도커 허브에서 가져오기

도커 허브에서 이미지 가져오기 외부에 있는 컨테이너를 가져와서 쓰기 설정한 별명(mdb)로 컨테이너 실행 외부에 있는 것을 가져와 쓰는 것이기 때문에 exec를 사용한다.

2023년 9월 5일
·
0개의 댓글
·
post-thumbnail

docker hub 이용법

다른 사람 이미지를 가져와서 내꺼에 올리는 법 생성한 도커를 도커 허브에서 삭제하기

2023년 9월 5일
·
0개의 댓글
·
post-thumbnail

[DevOps] EC2 서버에 docker를 활용한 수동 배포 (a.k.a 삽질)

1. 서론   Lovebird 프로젝트 v0.1 개발이 끝나고 배포를 진행했다. 처음엔 CICD 구축을 계획했지만, v0.1은 MVP 개발이기에 CICD가 오버 엔지니어링으로 느껴져 수동 배포를 하기로 했다. 이번 포스팅에서는 수동 배포 중 만난 이슈를 중심으로 글을 작성할 예정이다. 2. Deploy Flow   처음엔 ec2에 git clone 후 gradle build를 통해 jar 파일을 생성하여 실행하려 했다. 하지만 t2.micro의 EC2 인스턴스는 build를 버티지 못하여 CPU가 폭발하여 멈춰버렸다. 어쩔 수 없이 docker를 도입하게 되었다.   위의 아키텍처처럼 Local에서 gradle build를 통해 jar 파

2023년 6월 7일
·
3개의 댓글
·
post-thumbnail

MySQL과 Spring Boot 서버를 Docker에 올리기(+Docker Hub)

Spring Boot와 mySQL을 도커에 올리고, 다른 host machine에서도 사용할 수 있도록 도커 이미지를 Hub에 올리도록 하겠습니다. 마지막으로는 여러 도커 컨테이너를 한번의 명령으로 실행할 수 있도록 Docker Compose파일도 생성하겠습니다. > 해당 내용은 여러 구글링을 통해 진행된 과정이기 때문에 정석적인 방법은 아닐 수 있습니다. 1. 도커 네트워크 생성 mySQL과 Spring Boot 서버를 도커 상에서 연결하기 위해서는 서버와 DB 컨테이너가 네트워크를 통해 통신을 해야합니다. 터미널에 docker network create [네트워크명] 입력 ex) docker network create 8am-net docker networ

2023년 5월 9일
·
0개의 댓글
·
post-thumbnail

도커 이미지 배포

도커 허브 저장소 이미지 저장소 생성 도커 허브 사이트에서 Create Repository로 생성 저장소에 이미지 올리기 저장소에 올릴 이미지 생성 이미지 이름 추가 docker tag [기존의 이미지 이름] [새롭게 생성될 이미지 이름] 기존 이름이 사라지는 것이 아니라 같은 이미지를 가리키는 새로운 이름 추가 도커 허브 서버에 로그인 회원 가입때 사용한 아이디와 비밀번호를 입력 로그인 정보 삭제시 docker logout 입력 이미지를 저장소에 전송 도커에서 이미지 내려받기 저장소 웹훅 추가 저장소에 이미지가 push 됐을 때 특정 URL로 http 요청 전송 설정

2023년 5월 1일
·
0개의 댓글
·

Docker VS. Git

✏️ 도커를 사용해야 하는 이유 📍 Git hub VS. Docker hub 두 서비스 모두 로컬의 파일을 원격에 저장하고 원하는 PC 에서 언제든지 다시 가져와 사용할 수 있는 서비스를 제공한다. Git Hub git hub 로 가져온 프로젝트는 로컬 pc 에서 별도로 환경 세팅을 해줘야 한다. 이 때 로컬에 세팅되어있던 프로그램과 충돌하거나 프로그램이 준비되있지 않으면 실행이 불가할 수 있다. Docker Hub Docker 는 내부에 별도의 격리된 OS 가 존재하기 때문에 로컬 OS 의 프로그램과 별개로 작동된다. 즉, pull 이후 별도 환경 세팅이 필요했던 git 과 다르게 docker 에서 가져온 이미지는 별도 세팅 없이 바로 실행할 수 있다. docker hub 는 서비스를 배포하고 운영할 때 큰 장점이 있다. 프로젝트의 서버가 많고,

2023년 4월 25일
·
0개의 댓글
·
post-thumbnail

도커 허브에 이미지 업로드 하기

🔗 도커 허브 ✏️ 준비하기 📍 로그인 도커 허브 사이트에서 로그인하기 리눅스에서 도커 로그인하기 처음엔 id, pw 를 입력해야 하지만 두번째 부터는 자동 로그인 되는 듯 하다. 참고로 이메일 말고 아이디를 입력해야 로그인 가능하다. Login Succeeded 문구가 나오면 로그인 성공 📍 업로드할 이미지 준비 이전에 작업한 이미지를 업로드 할 예정이다. 🔗 레시피로 node 이미지 만들고 실행하기 지금 보유한 3개의 이미지중 첫번째 nodehello1 를 업로드 할 계획이다. ✏️ 이미지 업로드 양식 도커허브에서는 이미지를 업로드 할 때 일정한 양식을 요구한다

2023년 4월 25일
·
0개의 댓글
·
post-thumbnail

도커 허브 사용하기

🔗 도커 허브 🔗 도커 허브 회원가입 ✏️ 도커 허브에 내가만든 이미지 업로드 하기 📍 Docker 로그인 하기 Bash 에서 아래의 명령어를 입력하면 docker 허브에 로그일 할 수 있다. username 과 pw 를 입력하면 되는데 참고로 email 로 로그인하는것은 불가능한 것 같다. 도커허브 홈페이지에서 프로필의 username 을 확인한 뒤 로그인하면 된다. 📍 실습 준비 정확한 실습을 위해서 이전에 사용했던 이미지와 컨테이너를 삭제한 후 진행하겠다. 아래 text 를 추가한다. 새로운 도커파일 생성하기 수정 새로운 속성을 입력해준다 도커 이미지 생성 이미지를 확인해서 성공했는지 확인한다. nodehello

2023년 4월 17일
·
0개의 댓글
·
post-thumbnail

[Docker] Dockerfile 생성, image 빌드 후 도커 hub에 push 하기 !

Dockerfile 작성하기 전체적인 과정을 진행함에 있어 가장 기본적인 시작점은 Dockerfil로 부터 시작된다. **1) 도커 파일 작성 2) 이미지 빌드 (docker build) 3) 빌드 된 이미지로 컨테이너 생성** FROM : 기본 베이스 이미지 -> 보통 OS를 가장 밑단으로 두는데 현재는 OS가 주축으로 필요시 되는게 아니니 node를 베이스 이미지로 둔다. **WORKDIR : 이미지 빌드 후 어떤 컨테이너에서 어떤 경로로 실행 할지 경로 설정 ** ** RUN : RUN 명령은

2023년 4월 5일
·
0개의 댓글
·
post-thumbnail

What is Docker?

1. Docker [그림1] Docker ✅ Docker란? Docker는 컨테이너 가상화 기술을 기반으로 하는 오픈소스 플랫폼이다. 간혹 Docker가 컨테이너 가상화 기술을 개발한 회사라고 오해하는 경우가 종종 있는데, 컨테이너 가상화 기술은 Docker 이전에 이미 개발되어 존재했다. Docker는 최초의 컨테이너 기술인 LXC(Linux Container)에 여러 가지 중요한 기술을 가미하여 강력한 효율성과 유연성을 제공했다. Docker는 컨테이너 가상화 환경 위에 애플리케이션 배포 엔진을 더하여 사용자의 코드를 어디서든 빠르고 가볍게 실행시킬 수 있다. 게다가 요즘 널리 사용되는 MSA(Micro Service Arc

2022년 9월 5일
·
0개의 댓글
·
post-thumbnail

[Docker] Docker Hub push 실패 : requested access to the resource is denied

상황 > Docker에서 사용 중인 이미지를 Docker Hub에 push 하려고 한다. 이때 리소스에 접근할 수 없다는 에러가 발생한다. 발생한 오류 > denied: requested access to the resource is denied 리소스에 대해 요청된 접근이 거부되었습니다. 원인 찾아보니 두 가지의 원인이 있다고 한다. >1. Docker Hub에 로그인 하지 않은 경우 → 나는 으로 로그인 한 상태였기에 해당되지 않았다. >**2. Docke

2022년 8월 3일
·
0개의 댓글
·
post-thumbnail

CI/CD를 구축해보자

오늘은 CI/CD를 구현하면서 정리한 모든 것을 해볼 것이다. 스프링 프로젝트는 이미 구현해놓았다. 해당 글은 "무중단 배포"에 대한 내용은 없습니다. 해당 프로젝트 Git 주소: https://github.com/Cha-Young-Ho/dockermysqlec2 🚗 목차 Git Flow 작성 CI 구축 CD 구축 확인 🌈 Git Flow 작성 Git Flow를 통해서 모든 작업을 총괄해야 한다. 사실상 가장 중요한 부분이 될 것이다. 작성한 Git Flow를 살펴보자. 이제 구문 by 구문 살펴보자! 🌈 CI 구축 🐳 이벤트 명시 master, develop 브랜치에 "push", "pr" 이벤트가 생겼을 때 git action을 동작시킨다. 🐳 Job 명시 job을 명시하며

2022년 7월 24일
·
0개의 댓글
·
post-thumbnail

[Docker] 도커 이미지

✏️작성자 : 유송경 0. 도커 허브 (Doker hub) 도커가 공식적으로 제공하고 있는 이미지 저장소. 깃헙에 코드를 올리는 것처럼 도터 허브에 이미지 업로드 가능. 도커 허브 사이트에 직접 방문하거나, 도커 엔진에서 'docker search' 명령어를 사용해 원하는 이미지 탐색 가능함. 1. 도커 이미지 생성 사용자가 직접 특정 애플리케이션을 위한 개발 환경 구축 후 이미지 생성하는 경우 사용. 위의 명령어를 통해 testcontainer 컨테이너를 testcontainer:first라는 이름의 이미지로 생성 가능! docker images 명령어로 생성된 도커 이미지 확인 가능함. 2. 도커 이미지의 구조 docker inspect 명령어는 네트워

2022년 7월 21일
·
0개의 댓글
·
post-thumbnail

Docker를 이용한 Server 환경 구축(1) - Main Java Server

우선 Docker란 무엇일까? Docker란, 프로그램에 있어서 Server나 PC 환경을 많이 타게 되는데, 이러한 환경을 한 컴퓨터에서 여러 환경을 빠르고 쉽게 이용 할 수 있게 해주는 Tool이다.(필자가 이해한바론?) 현재 인터넷이 안되는 상태의 Server에 프로그램 환경을 구축하는 방법에는 여러가지 방법이 있다. 대표적으로 필요한 환경들을 zip, tar.gz ... 등등 파일로 압축을 풀어서 내부에 있는 make나 configure 등등을 모두 진행해주고 환경파일도 일일히 넣어주고 경로 찍어주어서 설치하는 방식이 있다. 쥰나게 고전적이고, 개오래걸리고, 의존성땜에 굉장히 빡치는 작업 방식이다. VMware 같은 곳에서 환경들을 모두 설치해준뒤 image로 만들어 해당 Server에 해당 image를 올려서 설치하는 방식이 있다. 하지만, Ubuntu는 PC와 Server와 조금 상이 할 수 있기 때문에 비추천한다. Docker위에 모

2022년 7월 15일
·
0개의 댓글
·
post-thumbnail

imagePullSecrets manager: 놓치지 않을거에요... Expired Authorization Token..

만료/변경된 imagePullSecrets을 관리하기 위해 만든 imagepullsecrets-manager를 소개한다. > > >https://github.com/GeunjeLEE/private-registry-secret-manager 개요 현재 팀의 서비스는 오픈소스로 되어있기 때문에 github는 물론 docker hub도 공개되어있다. 하지만 최근 private(코드를 공개하지 않는) 프로젝트의 CI/CD를 구축할 일이 생기면서 상당히 귀찮은 상황을 마주하게 되었다. github는 물론이고 docker image역시 private repository을 사용한다는 것이 그것인데, kubernetes에서 [private image를 받아오기 위해서는 credential이 필요](https://kubernetes.io/ko/docs/tasks/configure-pod-container/pull-image-pr

2022년 7월 6일
·
0개의 댓글
·
post-thumbnail

Docker 컨테이너 및 이미지 생성

💪 들어가며.. 프로젝트를 진행하다가 로컬 환경에서 머신러닝 학습을 진행하고, 해당 결과를 json 형식으로 반환하는 쿠버네티스 파드를 생성하고자 했습니다. 그런 파드를 구성하기 위한 사전 작업으로 Docker 컨테이너를 생성하고 이를 이미지로 만드는 과정을 이번 포스트에서는 다루어보겠습니다. 물론, 이 과정말고 Docker File을 작성할 수 있지만, 쿠버네티스에서는 Docker File을 이용하는 것이 아닌 이미지를 활용해서 pod를 생성하기에 해당 방법으로 진행했습니다. 🐳 Docker 컨테이너 생성 저는 YOLO를 이용한 ML 모델 학습을 하였고 Flask API를 활용해서 model serving을 해서 결과를 알리기 위해 아래와 같이 컨테이너를 생성해보았습니다. (YOLOv5는 Pytorch를 이용합니다.) 참고로 bind에 대해 간단히 설명해드리면, source는 컨테이너로 복사(?)하기를 원하는 폴더 위치를 입력하고, target에는 해당 폴더가

2022년 5월 27일
·
0개의 댓글
·
post-thumbnail

Docker 기초

손쉬운 환경 구축, docker 라즈베리파이에서 작동하는 소프트웨어를 개발할 때 처음부터 라즈베리파이에서 개발을 시작하는 것이 아니라 리눅스 기반 환경에서 어느정도 완성한 뒤 해당 기기로 프로그램을 옮기는 작업을 거치게 된다 하물며 클라이언트와 소통하다가 라즈베리파이 내에서도 여러 기기들 중 다른 타입의 기기로 변경하게 되었다면 했던 일을 또다시 반복해야하는 불상사가 발생할 수도 있다 이를 편하게 하기 위해 지금까지 구축한 환경이 어느 곳에서든 실행되길 바라는 기술은 매우 필요하다 이를 위해 도커를 사용한다 도커를 사용하게 되면 예를 들어, mac에서 리눅스 기반의 테스트를 해본 뒤 목표 장치에 배포하기 쉬워진다 위키백과를 인용해보자면... 가상머신(VM)? 도커? VM은 내 컴퓨터의 OS의 자원을 가지고 가상화 기술(Hypervisor)을 이용해 내 컴퓨터에서 여러 개의 OS를 구동할 수 있게 한다 예로 VirtualBox, VMWare, Pa

2022년 4월 27일
·
0개의 댓글
·
post-thumbnail

[Dimelo Project] Travis CI, Code Deploy, Docker로 무중단배포 하기

Docker와 Docker hub를 이용한 무중단 배포글을 찾는데 힘이 들어 .. 나같이 Docker와 Docker hub를 이용해서 무중단 배포를 하려는 사람들을 위해 도움을 주고자 글을 써보려고 한다.. 아직 Docker초보이고..아마도 더 좋은 방법이 있을지도 모르니까! 그냥 이렇게 했구나~ 정도로만 봐주시면 좋겠다! 순서 VS code에서 코드를 git main 브랜치에 푸쉬한다 travis CI에서 main브랜치의 commit을 감지하고 테스트를 진행한다. travis CI에서 Dockerfile을 통해 image를 빌드 한 후 Docker hub로 image를 푸쉬한다. travis CI에서 빌드 한 파일을 S3버킷으로 보낸다 travis CI는 직접 배포를 못하므로 Code Deploy에서 S3에 전달된 파일을 EC2에 배포스크립트와 함께 보낸다. EC2에 코드가 도착하면 배포스크립트가 실행된다. 배포스크립트에서는 travis CI

2022년 3월 11일
·
0개의 댓글
·
post-thumbnail

What is Docker?

Docker ✅ Docker Docker enables developers to package applications & system tools & dependencies into containers and this container makes it possible on different servers, machines. The main difference between VM(Virtual Machine) and Docker is whether it has its own OS or not.

2022년 2월 16일
·
1개의 댓글
·

Ai_D54

Summary CLI는 무엇인가? Docker Hub에서 Doxker Image 를 검색한 뒤 사용 한 개의 Docker image를 이용해서 Xontainer를 구축 두 개 이상의 Docker Container를 이용해서 Container를 구축 Docker LifeCycle 을 통해 오늘 배우지 않은 부분이 무엇인지 알 수 있다. 1.Docker 어플리케이션 실행 환경을 코드로 작성 가능, OS를 격리화하여 관리하는 기술. (1) 환경 표준화 어플리케이션이 어떤 환경에서 구동될지 염두한 뒤 개발되어야 함. (같은 Linux라고 할지라도 UBuntu, ㅊ두섄, DEbian 등 여러 버전이 존재) (2) 수작업으로 일치시키는 환경 구성 모든 개발자, 사용자가 동일한 OS 환경을 유지 한다면 각기 다른 OS에 필요한 빌드 및 테스트 시간은 줄일 수 있지만, 각자의 컴퓨터 혹은 사용목적에 따라 설정이 필요하다. 즉, 같은 OS라도 사용자에 따라 달라지는

2022년 2월 4일
·
0개의 댓글
·