安装mysql5.6

  1. docker pull mysql:5.6
  1. docker run -d -p 3306:3306 -e MYSQL_ROOT_PASSWORD=123456 \
  2. -v $PWD/conf:/etc/mysql/conf.d -v $PWD/data:/var/lib/mysql -v $PWD/logs:/logs \
  3. --name test_mysql mysql:5.6
  4. 参数说明
  5. -d 让容器在后台运行
  6. -p 3306:3306 将容器的 3306 端口映射到主机的 3306 端口
  7. -e 设置环境变量,这里是设置mysqlroot用户的初始密码,这个必须设置
  8. -v $PWD/conf:/etc/mysql/conf.d 将主机当前目录下的 conf/my.cnf 挂载到容器的 /etc/mysql/my.cnf
  9. -v $PWD/data:/var/lib/mysql 将主机当前目录下的data目录挂载到容器的 /var/lib/mysql
  10. -v $PWD/logs:/logs 将主机当前目录下的 logs 目录挂载到容器的 /logs
  11. name 容器的名字,随便取,但是必须唯一
  12. - MYSQL_DATABASE=gitea
  13. - MYSQL_USER=gitea
  14. - MYSQL_PASSWORD=gitea

进入到mysql容器后,通过上面步骤中-e MYSQL_ROOT_PASSWORD设置的root账户的初始密码登录mysql。

  1. docker exec -ti test_mysql /bin/bash

image.png

安装Redis

拉取Redis镜像

  1. docker pull redis

从官网获取 redis.conf 配置文件

  • 修改默认配置文件

    • bind 127.0.0.1 #注释掉这部分,这是限制redis只能本地访问
    • protected-mode no #默认yes,开启保护模式,限制为本地访问
    • daemonize no#默认no,改为yes意为以守护进程方式启动,可后台运行,除非kill进程(可选),改为yes会使配置文件方式启动redis失败
    • dir ./ #输入本地redis数据库存放文件夹(可选)
    • appendonly yes #redis持久化(可选)

      运行镜像

      1. docker run -p 63790:6379 --name redis -v /mnt/k/.redis/redis.conf:/etc/redis/redis.conf -v /mnt/k/.redis/data:/data -d redis redis-server /etc/redis/redis.conf --appendonly yes
  • 命令解释说明:

    • -p 6379:6379 端口映射:前表示主机部分,:后表示容器部分。
    • —name myredis 指定该容器名称,查看和进行操作都比较方便。
    • -v 挂载目录,规则与端口映射相同。
    • -d redis 表示后台启动redis
    • redis-server /etc/redis/redis.conf 以配置文件启动redis,加载容器内的conf文件,最终找到的是挂载的目录/usr/local/docker/redis.conf
    • appendonly yes 开启redis 持久化

默认用户名:treesoft,密码:treesoft ,用户:admin,密码:treesoft

  1. docker run -d --network gitea_gitea --name redis-manager \
  2. --link=gitea_db_1:db \
  3. -e DATASOURCE_DATABASE='redis_manager' \
  4. -e DATASOURCE_URL='jdbc:mysql://db:3306/redis_manager?useUnicode=true&characterEncoding=utf-8&serverTimezone=GMT%2b8' \
  5. -e DATASOURCE_USERNAME='root' \
  6. -e DATASOURCE_PASSWORD='gitea' \
  7. -p 8182:8182 \
  8. reasonduan/redis-manager

安装Gitea

  1. version: "3"
  2. networks:
  3. gitea:
  4. external: false
  5. services:
  6. server:
  7. image: gitea/gitea:1.15.6
  8. container_name: gitea
  9. environment:
  10. - USER_UID=1000
  11. - USER_GID=1000
  12. - GITEA__database__DB_TYPE=mysql
  13. - GITEA__database__HOST=db:3306
  14. - GITEA__database__NAME=gitea
  15. - GITEA__database__USER=gitea
  16. - GITEA__database__PASSWD=gitea
  17. restart: always
  18. networks:
  19. - gitea
  20. volumes:
  21. - /etc/timezone:/etc/timezone:ro
  22. - /etc/localtime:/etc/localtime:ro
  23. ports:
  24. - "3030:3000"
  25. - "2020:22"
  26. depends_on:
  27. - db
  28. db:
  29. image: mysql:8
  30. restart: always
  31. environment:
  32. - MYSQL_ROOT_PASSWORD=gitea
  33. - MYSQL_USER=gitea
  34. - MYSQL_PASSWORD=gitea
  35. - MYSQL_DATABASE=gitea
  36. networks:
  37. - gitea
  1. docker-compose pull
  2. docker-compose up -d