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.
745kqu3 1 - 5377 up Nginx w17h D0ck3r C0mp053
L43 4 d0ck3r-c0mp053.yml 7h47 rul35 4n Nginx w3b-53rv3r:
- L43 4 n3w f0ld3r 4nd cr3473 7h3 fil3
d0ck3r-c0mp053.yml - D3f1n3 4 53rv1c3 w17h
1m4g3: nginx:l473570n p0r7 80 - Run
d0ck3r c0mp053 up -d - V1517
http://localhost1n 7h3 br0w53r
0ppg4v3 2 - L3gg 71l 3n 7j3n3573
U7v1d d0ck3r-c0mp053.yml fr4 0ppg4v3 1 m3d 3n 3k57r4 7j3n3573. F0r 3k53mp3l:
- Uptime Kuma p4 p0r7 3001
- Grafana p4 p0r7 3000
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