树莓派上运行docker是不同于其他平台,树莓派属于arm32架构,经过前期的踩坑,在树莓派中运行docker镜像需要注意镜像对于doker的支持,在官方镜像搜索页是有系统架构作为删选的,如果需要运行arm32架构的镜像,需要使用对应的版本。
准备
- 树莓派4B
 
- docker
 
- docker-compose
 
使用镜像
目录结构
1 2 3 4 5 6 7 8 9
   | . │  .env │  docker-compose.yml │ └─mysql     ├─config     │      my.cnf     │     └─data
 
  | 
 
docker-compose.yml
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15
   | version: '3'
  services:   mysql-db:     container_name: mysql-docker        # 指定容器的名称     image: hypriot/rpi-mysql                   # 指定镜像和版本     ports:       - "3306:3306"     restart: always     environment:       MYSQL_ROOT_PASSWORD: ${MYSQL_ROOT_PASSWORD}       MYSQL_ROOT_HOST: ${MYSQL_ROOT_HOST}     volumes:       - "${MYSQL_DIR}/data:/var/lib/mysql"           # 挂载数据目录       - "${MYSQL_DIR}/config:/etc/mysql/conf.d"      # 挂载配置文件目录
 
  | 
 
.env
1 2 3 4
   | MYSQL_ROOT_PASSWORD=root MYSQL_ROOT_HOST=%
  MYSQL_DIR=./mysql
 
  | 
 
my.cnf
1 2 3 4 5 6
   | [mysqld] character-set-server=utf8mb4 default-time-zone='+8:00' innodb_rollback_on_timeout='ON' max_connections=500 innodb_lock_wait_timeout=500
 
  | 
 
编译
在根目录(docker-compose.yml所在目录)
启动
停止
源码地址
源码地址