日常开发测试中经常需要临时起一些测试、验证用的 docker 镜像来进行一个
祸祸调试,每逢要用的时候就要去拷打 GPT 或者翻 114514 条命令行 histrory,为了减轻心智负担,决定采用 O(1) 的方式,打表记录经常用到的一些内容。
叠甲:
作者环境为 macOS/arm64,请注意区分记录中的 platform 参数是否一致
作者尽量避免使用默认端口,因为保不准本地是否在跑其他运行环境占用了这些端口
数据库相关类
MySQL
这是一个重量级产品,同步数据,临时处理数据都要用到,基本内容能背下来,但是还是想懒:
docker run
方式执行:
docker run -d \
--name mysql-container \
-e MYSQL_ROOT_PASSWORD=123456 \
-e MYSQL_DATABASE=testing \
-p 23306:3306 \
-v mysql-data:/var/lib/mysql \
--platform linux/arm64 \
mysql:8.0
docker compose
方式执行:
version: '3.8'
services:
mysql:
image: mysql:8.0
platform: linux/arm64
container_name: mysql-container
environment:
MYSQL_ROOT_PASSWORD: 123456
MYSQL_DATABASE: testing
ports:
- "23306:3306"
volumes:
- mysql-data:/var/lib/mysql
volumes:
mysql-data:
PostgresSQL
重量级同上
Redis
这更是个重量级中的重量级
开发工具类
golangci-lint
在有 docker 但是没有 go 环境或者 go 环境版本不一致的场景,可以用 docker 的方式运行 golangci-lint 来进行代码质量检查