Docker 部署常用应用

本贴最后更新于 1527 天前,其中的信息可能已经斗转星移

docker 部署应用的示例,以方便后来查看(持续添加)

docker 部署应用步骤:

  1. 搜索镜像

    一般到 Docher Hub 搜索需要的镜像,然后找到对应的版本直接 pull

  2. 拉取镜像

  3. 创建容器

  4. 操作容器

部署 mysql

我这里部署的是 mysql8 版本。

# 搜索镜像 docker search mysql:8 # 拉取镜像 docker pull mysql:8 # 查看镜像 docker images # 创建并启动 docker run -d \ -p 3306:3306 --name mysql8 \ -v /root/docker_app_confg/mysql8/log:/var/log/mysql \ -v /root/docker_app_confg/mysql8/data:/var/lib/mysql \ -v /root/docker_app_confg/mysql8/conf:/etc/mysql/conf.d \ -e MYSQL_ROOT_PASSWORD=root \ --restart=always \ mysql:8

/root/docker_app_confg/mysql8/conf 目录下新建 conf.d 文件内容如下:

[client] default-character-set=utf8mb4 [mysql] default-character-set=utf8mb4 [mysqld] init_connect='SET collation_connection = utf8mb4_unicode_ci' init_connect='SET NAMES utf8mb4' character-set-server=utf8mb4 collation-server=utf8mb4_unicode_ci skip_character-set-client-handshake skip-name-resolve

部署后,可以使用数据库管理工具进行连接(navicatformysql,syslog 等)

部署 redis

我这里部署 redis6

# 拉取镜像 docker pull redis:6 # 创建启动容器 docker run --name redis6 -d \ -p6379:6379 \ -v /root/docker_app_confg/redis6/conf/redis.conf:/usr/local/etc/redis/redis.conf \ --restart=always \ redis:6 redis-server /usr/local/etc/redis/redis.conf # 可以添加参数设置密码 --requirepass "123456" # 进入容器 docker exec -it redis6 redis-cli docker exec -it redis6 redis-cli -a '密码'

部署 gitea

# 拉取镜像 docker pull gitea/gitea:latest # 启动镜像 docker run -d --name=gitea \ -p 222:22 \ -p 9999:9999 \ -v /docker_app_config/gitea:/data \ --restart=always \ gitea/gitea:latest # 修改配置 # vi /docker_app_config/gitea/gitea/conf # 修改 server 和 database 这两项 [server] APP_DATA_PATH = /data/gitea DOMAIN = 47.97.127.213 SSH_DOMAIN = 47.97.127.213 HTTP_PORT = 9999 ROOT_URL = http://47.97.127.213:9999 DISABLE_SSH = false SSH_PORT = 222 SSH_LISTEN_PORT = 22 LFS_START_SERVER = false LFS_CONTENT_PATH = /data/git/lfs [database] PATH = /data/gitea/gitea.db DB_TYPE = mysql # 修改ip:port HOST = ip:port NAME = gitea USER = root PASSWD = root # 访问 http://xxx:9999/ 注册账号密码 分配权限

部署 Nacos

# 1. 拉取镜像 docker pull nacos/nacos-server # 2. 创建数据库并初始化schemal 参照(https://github.com/alibaba/nacos/blob/master/config/src/main/resources/META-INF/nacos-db.sql) # 3. 启动容器 (参数查看 https://nacos.io/zh-cn/docs/quick-start-docker.html) docker run -d \ -e MODE=standalone \ -e PREFER_HOST_MODE=ip \ -e SPRING_DATASOURCE_PLATFORM=mysql \ -e MYSQL_SERVICE_HOST=xxx \ -e MYSQL_SERVICE_PORT=3306 \ -e MYSQL_SERVICE_DB_NAME=nacos \ -e MYSQL_SERVICE_USER=root \ -e MYSQL_SERVICE_PASSWORD=root \ -p 8848:8848 \ --name nacos \ --restart=always \ nacos/nacos-server # 4. 进入容器 查看 docker exec -it nacos /bin/bash # 查看其中的${XXX} 的环境变量,确保是正确的值 ,如果没有的话 可以使用 set KEY=VALUE 设置(在容器内设置) cat /home/nacos/conf/application.properties # 5,访问 ip:8848/nacos 账号密码 都是nacos

部署 rabbitmq

# 拉取镜像 docker pull rabbitmq:3.8.5-management # 启动容器 docker run -d --name rabbitmq3.8.5 --restart=always -p 15672:15672 -p 5672:5672 rabbitmq:3.8.5-management # 控制台访问 ip:15672 账号密码都是 guest
  • Docker

    Docker 是一个开源的应用容器引擎,让开发者可以打包他们的应用以及依赖包到一个可移植的容器中,然后发布到任何流行的操作系统上。容器完全使用沙箱机制,几乎没有性能开销,可以很容易地在机器和数据中心中运行。

    495 引用 • 931 回帖
2 操作
jchain 在 2021-03-02 18:08:33 更新了该帖
jchain 在 2020-07-03 18:08:41 更新了该帖

相关帖子

欢迎来到这里!

我们正在构建一个小众社区,大家在这里相互信任,以平等 • 自由 • 奔放的价值观进行分享交流。最终,希望大家能够找到与自己志同道合的伙伴,共同成长。

注册 关于
请输入回帖内容 ...