我的知识库 / Docker / Docker Compose 实践
如果你安装了 Docker Desktop
,那么它已经帮你自动安装了 Docker Compose
插件。否则,需要额外安装插件。
使用一下命令安装或升级 Docker Compose
(linux):
sudo apt update
sudo apt install docker-compose-plugin
sudo yum update
sudo yum install docker-compose-plugin
验证安装版本:
docker-compose version
运行
docker-compose up
查看运行
docker-compose ps
停止
docker-compose stop
启动&重启
docker-compose start
docker-compose restart
退出
docker-compose down
使用 docker-compose -h
查看更多命令及参数。
使用 Docker Compose
运行一个简单的 golang web 程序。
mkdir docker-compose-go-demo
cd docker-compose-go-demo
go mod init docker-compose-go-demo
main.go
文件,并写入程序代码package main
import (
"fmt"
"net/http"
"time"
)
func greet(w http.ResponseWriter, r *http.Request) {
fmt.Fprintf(w, "Hello Docker Compose! %s", time.Now())
}
func main() {
http.HandleFunc("/", greet)
http.ListenAndServe(":8080", nil)
}
Dockerfile
文件,并编写内容FROM golang:alpine
WORKDIR /app
COPY . .
EXPOSE 8080
ENTRYPOINT [ "go","run","main.go" ]
docker-comppose.yml
文件,并编写内容version: "3.9"
services:
web:
build: .
# image: docker-compose-go-demo_web:v1
# image: docker-compose-go-demo_web:v2
ports:
- "8080:8080"
docker-compose up -d
场景:
docker-compose up -d --build
docker-compose up -d --no-deps --build web
如果
docker-compose.yml
直接使用的镜像,那么直接更新,再次docker-compose up -d
即可。