Skip to content

Latest commit

ย 

History

History
144 lines (102 loc) ยท 3.93 KB

Linux-full-stack07.md

File metadata and controls

144 lines (102 loc) ยท 3.93 KB

{ํ’€์Šคํƒ#7} ๋ฆฌ๋ˆ…์Šค(Linux) - docker image ๋งŒ๋“ค๊ธฐ (1/2)

Test Server ๊ตฌ์ถ• (Docker)

# ๋„์ปค ์„ค์น˜ ํ™•์ธ
docker version

# ๋„์ปค ์„ค์ • ํ™•์ธ
docker system info

docker images / docker image ls

# docker container ๋„์šฐ๊ธฐ (์ž ๊น ๋“ค์–ด๊ฐ€์„œ ์ถœ๋ ฅ๋งŒ ํ•˜๊ณ  ๋ฐ”๋กœ ๋‚˜์˜ด)
# docker์— ์„ค์น˜๋˜์–ด ์žˆ๋Š” ์ด๋ฏธ์ง€๋ฅผ ๊ฐ€์ง€๊ณ  container๋ฅผ ๋„์šฐ๋Š” ๊ฒƒ์ž„
# echo ํ˜น์‹œ ๋ชป์ฐพ์„ ์ˆ˜๋„ ์žˆ์œผ๋‹ˆ /bin ๋ถ™์ž„
docker [container] run --name centos2 centos:latest /bin/echo 'Hello docker!'

# ์‹คํ–‰์ค‘์ธ ์ปจํ…Œ์ด๋„ˆ๋งŒ ๋ณด๊ธฐ
docker ps

# ์„ค์น˜๋˜์–ด ์žˆ๋Š” ์ปจํ…Œ์ด๋„ˆ ๋ชจ๋‘ ๋ณด๊ธฐ
docker ps -a

# ๋„์ปค ์ปจํ…Œ์ด๋„ˆ ์‹คํ–‰, it(interactive ํ˜•ํƒœ)
docker [container] run -it --name "<์ปจํ…Œ์ด๋„ˆ-์ด๋ฆ„>" centos /bin/bash

# ํ˜„์žฌ ๋Œ๊ณ  ์žˆ๋Š” ์ปจํ…Œ์ด๋„ˆ id๋งŒ ์ถœ๋ ฅ
docker ps -q

# container ๋ชจ๋“  id ์ถœ๋ ฅ
docker ps -aq

docker start/stop <์ปจํ…Œ์ด๋„ˆ-์ด๋ฆ„>

# ์ปจํ…Œ์ด๋„ˆ ๋“ค์–ด๊ฐ€๊ธฐ
docker attach <์ปจํ…Œ์ด๋„ˆ-์ด๋ฆ„>

# ๋„์ปค ์ปจํ…Œ์ด๋„ˆ ์ง€์šฐ๊ธฐ
docker rm <์ปจํ…Œ์ด๋„ˆ-id>

# ๋ชจ๋“  ์ปจํ…Œ์ด๋„ˆ ์ค‘์ง€ ($๋Š” ๋ณ€์ˆ˜)
docker stop $(docker ps -aq)
# pull์€ ๋ฐ›์•„์˜ค๊ธฐ, push๋Š” ๋ณด๋‚ด๊ธฐ
docker [image] (pull | push) <image-name>

# nginx image ์‚ญ์ œ
docker image rm nginx

# ์‚ฌ์šฉํ•˜์ง€ ์•Š๋Š” ๋ชจ๋“  image ์‚ญ์ œ
docker image prun

# docker hub ๋กœ๊ทธ์ธ
docker login
  1. File Sharing ํ•„์ˆ˜! (docker๋ž‘ local pc์˜ directory ์—ฐ๊ฒฐ)
  • VSCode๋กœ ์ฝ”๋”ฉํ•  directory์— git์„ ์„ธํŒ…ํ•ด์•ผ ํ•จ, flask ํด๋” ๋“ฑ ๋ฐฐ์น˜

  • Mac

    • ๋„์ปค desktop - preferences - file sharing - + - C:\Users\Aaron Kim\workspace\sfd
  • Windows

    • C๋“œ๋ผ์ด๋ธŒ์˜ Users ํด๋” ์ดํ•˜๋Š” ์ž๋™์œผ๋กœ ๊ณต์œ ๋˜์„œ ๋”ฐ๋กœ ์„ค์ •ํ•  ํ•„์š” ์—†์Œ
  1. Run Container by CentOS image (CentOS ๋„์ปค ์ปจํ…Œ์ด๋„ˆ ์•ˆ)
  • mydealdev :port

    • Nginx: 80
    • volta
    • PM2 by volta
    • Node, NPM (express): 7101
    • python3, pip (flask): 7201
    • (MySQL8: 3306)
    • (rsync, rcp setting: 22)
      (docker๋ฅผ putty๋กœ ๋“ค์–ด๊ฐˆ ์ผ์€ ์—†์Œ,
      ๋งŒ์•ฝ ๋“ค์–ด๊ฐ„๋‹ค๋ฉด, 22๋ฒˆ ํฌํŠธ ์—ด๊ณ  sbin/init์œผ๋กœ ๊ตฌ๋™ํ•ด์•ผ ๋ฐ๋ชฌ ๋œธ)
    cd workspace/sfd/
    touch t.txt
    touch test.js
    
    # ํฌํŠธ ์„ค์ •ํ•˜๊ณ  ๊ณต์œ  ํด๋” ์ด์šฉํ•ด์„œ ์ปจํ…Œ์ด๋„ˆ ๋„์šฐ๊ธฐ
    docker container run -it --name "mydealdev" --hostname mydealdev -v "C:/Users/Aaron Kim/workspace/sfd:/home/workspace" -p 80:80 -p 7101:7101 -p 7201:7201 centos /bin/bash
    
    # ๋„์ปค ์ปจํ…Œ์ด๋„ˆ ์•ˆ
    [root@mydealdev /]# yum install epel-release -y
    [root@mydealdev /]# yum install telnet -y
    
    # clear ๋ช…๋ น์–ด ์‚ฌ์šฉํ•˜๊ธฐ ์œ„ํ•ด ์„ค์น˜
    [root@mydealdev /]# yum install ncurses
    
    # ์‚ฌ์ „์— NCloud ACG ์…‹ํŒ… ํ•„์š”
    [root@mydealdev /]# telnet <๊ณต์ธip> 3306
    
    # docker ์ž˜ ๋˜๋Š”์ง€ ์ฒดํฌ
    [root@mydealdev /]# curl https://ding-co.topician.com
    
    [root@mydealdev /]# yum install which rsync openssh-clients -y
    [root@mydealdev /]# which rsync
    
    [root@mydealdev /]# vi /etc/yum.repos.d/nginx.repo
    
    # [nginx]
    # name=nginx repo
    # baseurl=https://nginx.org/packages/centos/7/$basearch/
    # gpgcheck=0
    # enabled=1
    
    [root@mydealdev /]# yum install nginx -y
    
    # ์„ค์น˜๋˜์–ด ์žˆ๋Š”์ง€ ํ™•์ธ ๋ช…๋ น์–ด => which
    [root@mydealdev /]# which nginx
    
    # systemctl๋กœ ๋„์šธ ํ•„์š” ์—†์Œ, nginx๋กœ ๋„์›€ (๋ฐ๋ชฌ์ด ํ•„์š” ์—†์Œ)
    [root@mydealdev /]# ps -ef | grep nginx
    [root@mydealdev /]# nginx
    [root@mydealdev /]# !ps
    
    # localhost ์›น์‚ฌ์ดํŠธ ์ฃผ์†Œ
    # network - localhost - clear browser cache
    

[Note]

  • ํ„ฐ๋ฏธ๋„ ๋‚˜๊ฐˆ ๋•Œ exit / Ctrl + d / logout
  • exited (๋น ์ ธ๋‚˜์˜จ ์ƒํƒœ, ํ˜„์žฌ๋Š” ์‹คํ–‰ X)
  • docker๋Š” ์•ˆ์—์„œ id๋กœ ์ปจํ…Œ์ด๋„ˆ๋“ค์ด ๊ฐ๊ฐ ๋‹ค ๋งตํ•‘๋˜์–ด ์žˆ์Œ
  • $()๊ฐ€ ๋ณ€์ˆ˜์ž„
    cmder์—์„œ๋Š” ๋ช…๋ น์–ด๊ฐ€ ์•ˆ๋จนํžˆ์ง€๋งŒ, powersehll/git bash ์—์„œ๋Š” ์ž˜ ๋จนํž˜
    (linux bash shell ๊ฐ™์€ ๊ณณ์—์„œ๋งŒ ํ—ˆ์šฉ๋˜๋Š” ๋ช…๋ น์–ด์ธ๋“ฏ)
  • telnet์€ ์•”ํ˜ธํ™”๊ฐ€ ์•ˆ๋œ ๋ง
  • image commit (์ด๋ฏธ์ง€ ๊ตฌ์›Œ๋†“๊ธฐ)

Reference