golang 개발환경 만들기 (docker 사용)

docker 설치.

docker 이미지 고르기

docker 실행하기

docker-compose 활용

hello world

  # 현재 디렉토리에 example download
  $ git clone https://github.com/jinikr/golang-exercise .
  Cloning into '.'...
  remote: Counting objects: 13, done.
  remote: Compressing objects: 100% (7/7), done.
  remote: Total 13 (delta 0), reused 7 (delta 0), pack-reused 0
  Unpacking objects: 100% (13/13), done.

  # docker 실행 (docker-compose 사용)
  $ docker-compose up -d
  Pulling golang-dev (golang:1.10.1-stretch)...
  1.10.1-stretch: Pulling from library/golang
  cc1a78bfd46b: Pull complete
  53c14872d997: Pull complete
  99ae159b9cae: Pull complete
  66cbf2b79699: Pull complete
  a16f46d95485: Pull complete
  f235c5ef7891: Pull complete
  cdd98e20e590: Pull complete
  Digest: sha256:e7331dea607f66adb0d597f43d7cb9cdc36ac73cff56536bde3311b46c5186e9
  Status: Downloaded newer image for golang:1.10.1-stretch
  Creating golang-dev ... done

  # docker 컨테이너 확인
  $ docker ps
  CONTAINER ID        IMAGE                   COMMAND             CREATED             STATUS              PORTS               NAMES
  5a40fb644fbd        golang:1.10.1-stretch   "bash"              43 seconds ago      Up 42 seconds                           golang-dev

  # docker 컨테이너의 bash 접속
  $ docker exec -it golang-dev bash
  root@5a40fb644fbd:/var/app#

  # hello world 테스트
  root@5a40fb644fbd:/var/app# cd 01.\ hello-world/
  root@5a40fb644fbd:/var/app/01. hello-world# go run hello-world.go
  hello, world

부록