单机服务搭建
 
                vagrant安装虚拟机
初始化一个centos/7
| 1 | ## 使用vagrant命令 | 
启动虚拟机
| 1 | ## 启动虚拟机 | 
配置固定网络
修改 [VagrantFile] 文件
| 1 | config.vm.network "private_network", ip: "192.168.56.101" | 
开启 root登录 , 22(端口) 连接
| 1 | vi /etc/ssh/sshd_config | 
配置网络
| 1 | ## 进入到配置目录 | 
设置虚拟机 yum源
| 1 | # 备份 yum源 | 
安装JDK 1.8
创建 /mydata/jdk文件夹
在oracle官网下载 jdk8 tar.gz压缩包
上传到 /mydata/jdk 文件夹下,并解压出来
配置jdk运行环境
| 1 | ## 配置运行环境 | 
| 1 | # 更新配置 | 
安装nginx
创建 /mydata/nginx 文件夹
下载nginx
| 1 | ## 安装之前检查是否有安装过 | 
解压,安装,启动
| 1 | ## 解压文件 | 
服务启动
| 1 | ## 启动nginx | 
安装Docker
安装版本需求
centos7/linux 内核3.10以上
| 1 | ## 查看内核版本 | 
移除以前的docker相关包
| 1 | yum remove docker docker-client docker-client-latest docker-common docker-latest docker-latest-logrotate docker-logrotate docker-engine | 
配置yum源
| 1 | ## 注意:在安装之前需要确定网络配置,见附录 | 
安装docker
| 1 | sudo yum install -y docker-ce docker-ce-cli containerd.io | 
启动命令
| 1 | ## 开机自启,并且现在开启 | 
配置阿里云加速
| 1 | sudo mkdir -p /etc/docker | 
docker部署mysql,redis….
部署一个redis中间件
- 拉取镜像 - 1 
 2- docker pull redis 
 ## 注:不使用镜像号,默认使用最新的镜像
- 启动镜像 - 1 
 2
 3
 4
 5
 6
 7
 8
 9
 10
 11- docker run [OPTIONS] IMAGE [COMMAND] [ARG...] 
 # redis使用自定义配置文件启动
 docker run -v /data/redis/redis.conf:/etc/redis/redis.conf \
 -v /data/redis/data:/data \
 -d --name redis \
 -p 6379:6379 \
 redis:latest redis-server /etc/redis/redis.conf
部署nacos
- 下载官方压缩包- 用的1.3得包
 
- 解压到本地目录下- /mydata/nacos
 
- 启动服务- sh startup.sh -m standalone
 
dockerfile部署应用
使用docker部署应用
- 应用打包 - springboot –> mvn –> package
 
- target 上传到服务器 - 1 
 2
 3
 4
 5
 6- ## 服务器命令 
 [root@localhost service-hosp]# pwd
 /mydata/app/syt/service-hosp
 [root@localhost service-hosp]# ls
 Dockerfile target
 [root@localhost service-hosp]#
- 编写dockerfile文件 - 1 
 2
 3
 4
 5
 6
 7
 8
 9
 10- FROM openjdk:8-jdk-slim 
 LABEL maintainer=gongshishan
 COPY target/*.jar /app.jar
 ENTRYPOINT ["java","-jar","/app.jar"]
 ## 解释
 FROM openjdk:8-jdk-slim # 必须; from 跟着的是应用的基础环境,本文用的是java,所以用的是openjdk
- 构建镜像 - 1 
 2
 3
 4
 5
 6
 7
 8
 9
 10
 11
 12
 13
 14
 15
 16
 17
 18
 19
 20
 21
 22
 23
 24
 25
 26
 27
 28- docker build -t java-demo:v1.0 . 
 ## [.] 命令后面的 点 必须;作用是当前目录下的执行
 [root@localhost service-hosp]# docker build -t syt-hosp:v1.0 .
 Sending build context to Docker daemon 92.41MB
 Step 1/4 : FROM openjdk:8-jdk-slim
 8-jdk-slim: Pulling from library/openjdk
 a2abf6c4d29d: Already exists
 2bbde5250315: Pull complete
 115191490c27: Pull complete
 61b680ac8083: Pull complete
 Digest: sha256:25efb6e0609b95af243b4e3ce2c27dbc1022ef2a4db2164b7afa066c0db18137
 Status: Downloaded newer image for openjdk:8-jdk-slim
 ---> 9afd0fe33df7
 Step 2/4 : LABEL maintainer=gongshishan
 ---> Running in fe44d7ea6368
 Removing intermediate container fe44d7ea6368
 ---> 578c902545a1
 Step 3/4 : COPY target/*.jar /app.jar
 ---> 9e7edc0d660b
 Step 4/4 : ENTRYPOINT ["java","-jar","/app.jar"]
 ---> Running in c8cf1f8a3293
 Removing intermediate container c8cf1f8a3293
 ---> 2e57c5151161
 Successfully built 2e57c5151161
 Successfully tagged syt-hosp:v1.0
- 查看镜像 - 1 
 2
 3
 4
 5
 6- [root@localhost service-hosp]# docker images 
 REPOSITORY TAG IMAGE ID CREATED SIZE
 syt-hosp v1.0 2e57c5151161 4 minutes ago 388MB
 openjdk 8-jdk-slim 9afd0fe33df7 7 months ago 296MB
 redis latest 7614ae9453d1 7 months ago 113MB
 mysql 5.7 c20987f18b13 7 months ago 448MB
- 运行 - 1 - docker run -d -p 18007:18007 --name syt-hosp syt-hosp:v1.0 
扩展
docker 分享镜像
- 查看自己的镜像,把需要的镜像推送到自己的docker厂库 - 1 
 2
 3
 4
 5
 6
 7
 8- ## 登录镜像 
 docker login
 ## 给镜像重新打个标签,必须是以自己的docker名开头
 docker tag syt-hosp igsshan/syt-hosp
 ## 推送厂库
 docker push igsshan/syt-hosp
附录
-bash: wget: command not found
wget 不存在,需要自己安装
| 1 | ## 安装 wget | 
网络配置
| 1 | ## 进入到配置目录 | 
