beadss / docker-study

0 stars 0 forks source link

week(1): 도커 컨테이너 배포 #4

Open shleemars opened 5 years ago

shleemars commented 5 years ago

도커 컨테이너 배포

컨테이너로 애플리케이션 실행하기

FROM golang:1.9

RUN mkdir /echo
COPY main.go /echo

ENTRYPOINT ["go"]
CMD ["go", "run", "/echo/main.go"]

도커 이미지 빌드하기

docker image build -t 이미지명[:태그명] <Dockerfile의 경로>

docker image build -t example/echo:latest .

Sending build context to Docker daemon  4.096kB
Step 1/5 : FROM golang:1.9
1.9: Pulling from library/golang
55cbf04beb70: Pull complete
1607093a898c: Pull complete
9a8ea045c926: Pull complete
d4eee24d4dac: Pull complete
9c35c9787a2f: Pull complete
8b376bbb244f: Pull complete
0d4eafcc732a: Pull complete
186b06a99029: Pull complete
Digest: sha256:8b5968585131604a92af02f5690713efadf029cc8dad53f79280b87a80eb1354
Status: Downloaded newer image for golang:1.9
 ---> ef89ef5c42a9
Step 2/5 : RUN mkdir /echo
 ---> Running in 94e1ae6657f8
Removing intermediate container 94e1ae6657f8
 ---> cd46e658347e
Step 3/5 : COPY main.go /echo
 ---> 33ae6445366b
Step 4/5 : ENTRYPOINT ["go"]
 ---> Running in 299d68d1f9d9
Removing intermediate container 299d68d1f9d9
 ---> 9a562a6ef2ea
Step 5/5 : CMD ["run", "/echo/main.go"]
 ---> Running in 9498fcdebac9
Removing intermediate container 9498fcdebac9
 ---> e66a0ebed607
Successfully built e66a0ebed607
Successfully tagged example/echo:latest

베이스 이미지 강제로 받기

docker image build --pull=true -t example/echo:latest .

도커파일의 이름이 Dockerfile이 아닌 경우

docker image build -f Dockerfile-test -t example/echo:latest .

도커 컨테이너 실행

기본 실행

$ docker container run example/echo:latest

데몬 실행

$ docker container run -d example/echo:latest

포트포워딩

$ docker container run -d -p 9000:8080 example/echo:latest

정지

$ docker container stop $(docker container ls --filter "ancestor=example/echo" -q)

실행중인 컨테이너 목록

$ docker container ls

CONTAINER ID        IMAGE                 COMMAND                  CREATED             STATUS              PORTS               NAMES
671e61c0c2c9        example/echo:latest   "go run /echo/main.go"   47 seconds ago      Up 45 seconds                           serene_easley

이미지 검색

$ docker search --limit 5 mysql

이미지 내려받기

$ docker image pull jenkins:latest

보유한 이미지 목록

$ docker image ls

이미지 태그 붙이기

$ docker image tag example/echo:latest example/echo:0.1.0

shleemars commented 5 years ago

https://github.com/shleemars/Petalinux-Zybo-Z7-10