在 linux系统中使用docker部署web项目

环境

Ubuntu 16.04

注意:我这里docker,mysql等都是安装最新版如果需要则在docker官网搜索相应版本安装

docker搜索对应网址:https://hub.docker.com/search?image_filter=official&q=

步骤

1.更新apt包

注:apt用于软件安装的指令
sudo apt-get update
安装apt依赖 用于通过https获取仓库
sudo apt-get install \
    apt-transport-https \
    ca-certificates \
    curl \
    gnupg-agent \
    software-properties-common
添加docker 官方GPG密钥
curl -fsSL https://mirrors.ustc.edu.cn/docker-ce/linux/ubuntu/gpg | sudo apt-key add -
设置稳定版仓库
sudo add-apt-repository \
   "deb [arch=amd64] https://mirrors.ustc.edu.cn/docker-ce/linux/ubuntu/ \  $(lsb_release -cs) \  stable"
2.安装docker
获取最新的docker
sudo apt-get install docker-ce docker-ce-cli containerd.io
查看docker,顺便看看docker版本
docker --version
2.1 docker常用命令
查看是否安装成功
举例是mysql  如果是其他 将mysql换成你下载的镜像
docker images  容器ID
效果如下就是安装成功
0
查看运行的容器
docker ps
查看所有容器(运行与没运行)根据status 判断是否运行
docker ps -a 
停止运行容器
先找到容器运行的ID
docker ps -a 
停止容器
docker stop 容器ID
删除容器
docker rm 容器id
删除镜像
删除镜像前先找到镜像id
docker images 
删除镜像
docker rmi 容器id|容器名称
获取镜像ip 
docker inspect 容器name or id | grep IPAddress
docker run 命令解析

-e 设置环境变量

-p 外部端口:内部端口

--name  给容器定义一个名字

-v 挂载 就是将磁盘的文件挂载到容器相对应

 

 

3.docker安装mysql
docker pull mysql:latest

运行mysql 并且设置默认密码

docker run -itd --name mysql -p 3306:3306 -e MYSQL_ROOT_PASSWORD=123456 -e TZ=Asia/Shanghai mysql

 4.docker 安装redis

docker pull redis:latest

运行redis

docker run -itd --name redis -p 6379:6379 redis

5.docker 安装rabbitmq

docker pull rabbitmq:latest

运行rabbit

docker run -d --hostname my-rabbit --name rabbit -p 15672:15672 -p 5672:5672 -e TZ=Asia/Shanghai rabbitmq

 6.docker安装nginx

docker pull nginx:latest

运行nginx  挂载config文件   config文件参考网址:https://www.cnblogs.com/ausion/p/16457365.html

docker run --name nginx -p 80:80 -v   /usr/local/nginx/config/nginx.conf:/etc/nginx/nginx.conf -e TZ=Asia/Shanghai -d nginx

7.部署web 

7.1我一般将web站点放入/usr/local/web/admin文件下 

所以我会在/usr/local文件下创建 /web/admin文件夹然后创建一个Dockerfile文件 文件内容如下

FROM java:8

ADD youyue-admin.jar app.jar

EXPOSE 8098

ENTRYPOINT ["java","-jar","app.jar","--spring.profiles.active=prod"]

from 是基于java8环境

Expose 是端口

--spring.profiles.active=prod 是我需要执行环境文件 如果不需要切换就删除

7.2 将jar包放入文件下,最后截图如下:

 

 注:执行命令时需要注意文件位置是否正确

7.3 构建jar 镜像

 docker build -t admin  .

查看镜像是否构建成功

docker images admin

运行镜像

docker run  -d  -p 8098:8098 -e TZ=Asia/Shanghai   admin

查看镜像是否运行

docker ps

最后附一张我构建好运行的容器图

码云:https://gitee.com/ausions/youyue

posted on 2022-07-08 10:28  ausions  阅读(344)  评论(0编辑  收藏  举报