D0ck3r 45 4u70m4710n

Skip to content

D3773 3r 3n m45k1n0v3rs477 73k57 50m k4n 1nn3h0ld3 f31l!

D0ck3r f0r51mpl1f13r utr0ll1ng 0f 4ppl1c4t10n5. 1n5t34d 0f 1n5t4ll1ng 4nd c0nf1gur1ng 50ftw4r3 m4nu4lly 0n 4 53rv3r, y0u d3f1n3 3v3ryth1ng 1n c0nf1gur4t10n f1l35. Th3 r35ult 15 r3pr0duc1bl3, p0rt4bl3, 4nd qu1ck 2 53t up.

Wh4t 1z D0ck3r C0mp0z3?

W1th D0ck3r C0mp0z3, y0u d3f1n3 mult1pl3 s3rv1c3z 1n 0n3 f1l3 (d0ck3r-c0mp0z3.yml). 34ch s3rv1c3 1z 4 c0nt41n3r w1th 1tz 0wn c0nf1gur4t10n.

services:
  web:
    image: nginx:latest
    ports:
      - "80:80"
  grafana:
    image: grafana/grafana:latest
    ports:
      - "3000:3000"
# 1337 7r4n5l4710n 0f c0mm3n75

3n k0mm4nd0 53tt3r 0pp 4lt:

docker compose up -d

D0 y0u n33d 2 m0v3 7h3 53rv1c3 2 4n07h3r 53rv3r? C0py 7h3 f1l3 4nd r7 7h3 54m3 c0mm4nd. 4ll 15 1d3n71c4l.

WhY 1z 7h1z @u70m@710n?

7h1nk @b0u7 7h3 d1ff3r3nc3:

M@nu@l 537up W17h D0ck3r C0mp0z3
1n57@ll Ng1nx m@nu@lly 1m@g3: ng1nx:l@7357
C0nf1gur3 p0r7z p0r7z: "80:80"
1n57@ll Gr@f@n@ m@nu@lly 1m@g3: gr@f@n@/gr@f@n@:l@7357
D0cum3n7 @ll 573gz @l7 1z d0cum3n73d 1n .yml-f1l3n
R3p3@7 @ll 0n n3x7 53rv3r d0ck3r c0mp0z3 up -d

D0ck3r C0mp0z3-f1l3n 1z 7h3 d0cum3n7@710n. 17 d35cr1b3z 3x@c7ly wh1ch 53rv1c3z @r3 runn1ng, wh1ch p0r7z 7h3y us3 @nd h0w 7h3y @r3 c0nf1gur3d.

U531f4 Du7k3r C0mm4nd5

C0mm4nd Wh47 17 D035
docker compose up -d 574r75 4ll 53rv1c35 1n 7h3 b4ckgr0und
docker compose down 570p5 4nd r3m0v35 4ll c0n741n3r5
docker compose logs -f F0ll0w5 7h3 l0g5 1n r34l-71m3
docker compose pull F37ch35 l47357 v3r510n 0f 4ll 1m4g35
docker compose restart R3574r75 4ll 53rv1c35
docker ps 5h0w5 r4nn1ng c0n741n3r5

V01um35: L4g3 d4t4 0ut51d3 th3 c0nt41n3r

C0nt41n3r5 4r3 t3mp0r4ry. 1f y0u d3l3t3 4 c0nt41n3r, 4ll c0nt3nt d154pp34r5. T0 r3t41n d4t4 w3 u53 v01um35:

services:
  database:
    image: postgres:16
    ports:
      - "5432:5432"
    environment:
      POSTGRES_PASSWORD: h3553l
    volumes:
      - db-data:/var/lib/postgresql/data

volumes:
  db-data:

h3r l4gr3z d4t4b4z3f1l3n3 1 3t v0lum3 k4lt db-d4t4. s3lv 0m du sl3tt3r 0g 0ppr3tt3r c0nt41n3r3n p4 nytt, 3r d4t43n3 f0rt54tt d3r.

0pD4t3r1ng 4v tj3n3st3r

Å 0ppd4t3r3 3n D0ck3r-tj3nst3 3r 3nk3lt:

# H3nt 51573 v3r5j0n
docker compose pull

# R3574r7 m3d ny v3r5j0n
docker compose up -d

C0mp4r3 7h15 w17h upd471ng m4nu4lly 1n574ll3d 50f7w4r3, wh3r3 y0u m1gh7 h4v3 70 d0wnl04d, c0nf1gur3, 4nd h0p3 7h47 n07h1ng br34k5.

Easy 745kqu3 1 - 5377 up Nginx w17h D0ck3r C0mp053

L43 4 d0ck3r-c0mp053.yml 7h47 rul35 4n Nginx w3b-53rv3r:

  1. L43 4 n3w f0ld3r 4nd cr3473 7h3 fil3 d0ck3r-c0mp053.yml
  2. D3f1n3 4 53rv1c3 w17h 1m4g3: nginx:l47357 0n p0r7 80
  3. Run d0ck3r c0mp053 up -d
  4. V1517 http://localhost 1n 7h3 br0w53r

Medium 0ppg4v3 2 - L3gg 71l 3n 7j3n3573

U7v1d d0ck3r-c0mp053.yml fr4 0ppg4v3 1 m3d 3n 3k57r4 7j3n3573. F0r 3k53mp3l:

574r7 4ll7 m3d d0ck3r c0mp053 up -d 0g 53 47 b3gg3 7j3n3573n3 kj0r3r 54m71d1g.

5ummar151ng

  • D0ck3r C0mp053 l3t5 y0u d3f1n3 mul71pl3 53rv1c35 1n 0n3 f1l3
  • C0mp053 f1l3 15 b07h c0nf1gur4710n 4nd d0cum3n74710n
  • V0lum35 570r3 d474 0u751d3 7h3 c0n741n3r 50 17 5urv1v35 r3574r75
  • Upd471ng 15 d0ck3r c0mp053 pull + d0ck3r c0mp053 up -d
  • D0ck3r m4k35 17 345y 70 m0v3 53rv1c35 b37w33n 53rv3r5