Docker部署和配置MySQL,Redis,Nginx,Minio等镜像命令集合

目录

安装mysql

 连接服务器上的mysql​编辑

 安装Nginx

 Redis

 安装MongoDB

安装Tomcat

 安装minio


这里我使用的是腾讯云,linux是CentOS7.6 自带docker版本

安装mysql

拉取镜像

docker pull mysql:5.7

创建容器。

docker run -p 3306:3306 --name mysql -v /home/docker/mysql/conf:/etc/mysql/conf.d -v  /home/docker/mysql/logs:/var/log/mysql -v  /home/docker/mysql/data:/var/lib/mysql -e MYSQL_ROOT_PASSWORD=mysql@123 -d mysql:5.7 --character-set-server=utf8mb4 --collation-server=utf8mb4_unicode_ci

  • -p:代表端口映射,格式为 宿主机映射端口:容器运行端口。
  • -e:代表添加环境变量 MYSQL_ROOT_PASSWORD 是 root 用户的登陆密码。

 连接服务器上的mysql

 docker ps 查看容器

 安装Nginx

拉取镜像

 docker pull nginx

创建 Nginx 容器

 docker run -di --name nginx -p 80:80 nginx

将容器内的配置文件拷贝到指定目录(需要先提前创建好目录)

# 创建目录
mkdir -p /mydata/docker_nginx
# 将容器内的配置文件拷贝到指定目录
docker cp nginx:/etc/nginx /mydata/docker_nginx/

重命名宿主机 /mydata/docker_nginx/nginx 为 /mydata/docker_nginx/conf

mv /mydata/docker_nginx/nginx/ /mydata/docker_nginx/conf

终止并删除容器(目录挂载操作只能在创建容器时设置)

 docker stop nginx
 docker rm nginx

创建 Nginx 容器,并将容器中的 /etc/nginx 目录和宿主机的 /mydata/docker_nginx/conf 目录进行挂载

docker run -di --name nginx -p 80:80 -v /mydata/docker_nginx/conf:/etc/nginx nginx

访问宿主机:http://主机ip/ 结果如下:

 安装Redis

拉取镜像

docker pull redis

创建容器

##无密码模式
sudo docker run -d --privileged=true --restart=always -p 6379:6379 -v /mnt/data/redis/redis.conf:/etc/redis/redis.conf -v /mnt/data/redis/data:/data --name redis redis redis-server /etc/redis/redis.conf

## 开启redis AOF 模式,设置认证密码
sudo docker run -d --privileged=true --restart=always -p 6379:6379 -v /mnt/data/redis/redis.conf:/etc/redis/redis.conf -v /mnt/data/redis/data:/data --name redis redis redis-server /etc/redis/redis.conf --appendonly yes --requirepass "mypassword"

## 一般咋不开启AOF模式,使用默认的rdb
sudo docker run -d --privileged=true --restart=always -p 6379:6379 -v /mnt/data/redis/redis.conf:/etc/redis/redis.conf -v /mnt/data/redis/data:/data --name redis redis redis-server /etc/redis/redis.conf --requirepass "mypassword"

连接容器中的 Redis 时,只需要连接宿主机的 IP + 指定的映射端口即可。

 安装MongoDB

拉取镜像

docker pull mongo

创建容器

docker run -di --name mongo -p 27017:27017 mongo

连接容器中的 MongoDB 时,只需要连接宿主机的 IP + 指定的映射端口即可。

安装Tomcat

拉取镜像

 docker pull tomcat

创建容器

 docker run -di --name tomcat -p 8080:8080 tomcat

进入容器

 docker exec -it tomcat /bin/bash

 查看 webapps 目录下是否有 ROOT 项目,我们熟悉的 Tomcat 猫页面一般就在这个项目中。

可以通过命令进入到webapps中,可以看到该目录下空空如也,其实 Tomcat 在比较新的版本中将默认的 ROOT 项目放在了 webapps.dist 中了

 如果你真想访问 http://主机ip:8080/ 看到 Tomcat 猫,将其复制至 webapps 即可。

# 进入tomcat容器
[root@VM-4-10-centos ~]#  docker exec -it tomcat /bin/bash

root@c91f9b701476:/usr/local/tomcat# ls
bin  BUILDING.txt  conf  CONTRIBUTING.md  lib  LICENSE  logs  native-jni-lib  NOTICE  README.md  RELEASE-NOTES  RUNNING.txt  temp  webapps  webapps.dist  work
root@c91f9b701476:/usr/local/tomcat# cd webapps
root@c91f9b701476:/usr/local/tomcat/webapps# ls
root@c91f9b701476:/usr/local/tomcat/webapps# cd ..
root@c91f9b701476:/usr/local/tomcat# cd webapps.dist/
root@c91f9b701476:/usr/local/tomcat/webapps.dist# ls
docs  examples  host-manager  manager  ROOT

# 复制root到webapps文件夹命令行
root@c91f9b701476:/usr/local/tomcat/webapps.dist# cp -rf ROOT/ /usr/local/tomcat/webapps

 

 安装minio

拉取镜像

docker pull minio/minio

 创建目录:一个用来存放配置,一个用来存储上传文件的目录。

mkdir -p /home/minio/config
mkdir -p /home/minio/data

生成minio容器
使用默认生成账户与密码:默认账户与密码:minioadmin     minioadmin 

9090端口指的是minio的客户端端口

MINIO_ACCESS_KEY :账号

MINIO_SECRET_KEY :密码(账号长度必须大于等于5,密码长度必须大于等于8位)

docker run -p 9000:9000 -p 9090:9090 \
     --net=host \
     --name minio \
     -d --restart=always \
     -e "MINIO_ACCESS_KEY=minioadmin" \
     -e "MINIO_SECRET_KEY=minioadmin" \
     -v /home/minio/data:/data \
     -v /home/minio/config:/root/.minio \
     minio/minio server \
     /data --console-address ":9090" -address ":9000"

访问http://ip:9090就可以进入控制面板了

一些linux 和 docker的常用命令:

退出容器 CTRL+D 

linux修改配置文件vim xxx.conf

保存并退出shift+zz

查看所有docker下载的镜像docker images

删除docker镜像docker rmi 镜像名或镜像id

删除容器docker rm -f 容器id

重启所有docker容器docker restart $(docker ps -a -q)

重启所有运行中的容器 docker restart $(docker ps -q)

查看运行中的docker容器docker ps

 先这么多,之后再补充。。。。。

  • 2
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
要实现一键离线部署 MySQLRedis、Nacos 和 Nginx,你可以使用 Docker Compose 和 Docker 镜像。首先,你需要准备相应的镜像文件并将其加载到 Docker 中。在加载这些镜像之前,你需要确保已经从官方源或其他可信渠道下载了这些镜像。 以下是一个示例的 `docker-compose.yml` 文件,其中包含了 MySQLRedis、Nacos 和 Nginx配置: ```yaml version: '3' services: mysql: build: context: ./mysql dockerfile: Dockerfile restart: always ports: - 3306:3306 environment: - MYSQL_ROOT_PASSWORD=your_password volumes: - ./mysql_data:/var/lib/mysql redis: image: redis:latest restart: always ports: - 6379:6379 nacos: build: context: ./nacos dockerfile: Dockerfile restart: always ports: - 8848:8848 nginx: build: context: ./nginx dockerfile: Dockerfile restart: always ports: - 80:80 ``` 在以上示例中,MySQL、Nacos 和 Nginx 使用了自定义的 Dockerfile 来构建镜像。你需要在相应的目录下创建适当的 Dockerfile,以便构建这些镜像Redis 使用了官方提供的最新版本的镜像MySQL配置与之前一样,将容器内的 3306 端口映射到主机的 3306 端口。MySQL 的数据也会被挂载到主机的 `./mysql_data` 目录下。 Nacos 和 Nginx 的构建步骤类似于 MySQL。你需要在 `./nacos` 和 `./nginx` 目录下创建适当的 Dockerfile,并编写相应的构建脚本。 在准备好 Dockerfile 后,你可以使用 `docker-compose up -d` 命令来启动这些容器。使用 `-d` 参数可以在后台运行容器。 一旦容器启动成功,你就可以通过相应的端口访问 MySQLRedis、Nacos 和 Nginx。例如,使用 `localhost:3306` 访问 MySQL,`localhost:6379` 访问 Redis,`localhost:8848` 访问 Nacos,`localhost:80` 访问 Nginx。 希望这对你有帮助!如果还有其他问题,请随时提问。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值