docker desktop部署微服务项目
拉取镜像openJDk时,如果容器启动发现某个类缺失时,但是本地部署却没问题,大概率是openJDK缺少某些jar包,可以把本地的jdk相关文件复制给基于openJDK创建的容器里。docker pull nodered/node-red//拉取node-red镜像。docker pull nacos/nacos-server//拉取nacos镜像。# -p:指定容器端口,前一个是对宿主机映射端口
一、下载docker desktop
二、使用cmd命令下载nginx,nodered,mysql,redis,openjdk,nacos镜像
docker pull nginx //拉取nginx镜像
docker pull nodered/node-red //拉取node-red镜像
docker pull mysql:8.0 //拉取mysql镜像
docker pull redis //拉取redis镜像
docker pull openjdk:8 //拉取jdk镜像
docker pull nacos/nacos-server //拉取nacos镜像
下载镜像后,docker desktop的images镜像界面显示下载后镜像的信息。
三、使用cmd命令,基于某个镜像创建并运行容器
说明:
# --name:指定容器名称
# --network:指定容器网络
# -e:设置容器的环境变量,<环境变量名称>=<环境变量值>
-e TZ=Asia/Shanghai 指定时区
-e MYSQL_ROOT_PASSWORD=123456 初始化mysql的密码
# -p:指定容器端口,前一个是对宿主机映射端口,后一个是容器内部端口
# -v:指定容器数据持久化,把宿主机数据文件映射一份给容器
# -d:指定容器的镜像名称
基于nginx镜像创建容器
docker run --name nginx --network=my-net -p 9001:9000 -v E:\docker\conf.d:/etc/nginx/conf.d -v E:/docker/frontend:/usr/share/nginx/html -d nginx
基于node-red镜像创建容器
docker run -it -p 1881:1880 --name nodered -e TZ=Asia/Shanghai --network=my-net -v E:\docker\node_data:/data nodered/node-red
基于mysql镜像创建容器
docker run --name mysql --network=my-net -e MYSQL_ROOT_PASSWORD=root -p 3307:3306 -d mysql:8.0
基于nacos镜像创建容器
docker run --name nacos --network=my-net -e MODE=standalone -p 8849:8848 -d nacos/nacos-server
基于redis 镜像创建容器
docker run --name redis --network=my-net -p 6379:6379 -d redis
基于openjdk:8镜像创建容器运行jar包
guns-gateway.jar是微服务jar包,如果里面有yml配置文件,需要把里面的服务地址改为对应的容器名
docker run -d -v E:\docker\backend\guns-gateway.jar:/home/guns-gateway.jar --name guns-gateway -e TZ=Asia/Shanghai --network=my-net openjdk:8 java -jar /home/guns-gateway.jar
拉取镜像openJDk时,如果容器启动发现某个类缺失时,但是本地部署却没问题,大概率是openJDK缺少某些jar包,可以把本地的jdk相关文件复制给基于openJDK创建的容器里。
常用docker命令
容器断开nacos容器的bridge网络
docker network disconnect bridge nacos
容器nacos连接my-net网络
docker network connect my-net nacos
查看my-net网络下所有的容器
docker network inspect my-net
显示docker所有网络
docker network ls
更多推荐
所有评论(0)