阿里云服务器环境部署 一 Docker Jdk

安装前准备

1、修改hostname
ifconfig 查看内网IP地址

hostnamectl set-hostname bigData41

hostnamectl set-hostname bigData42

hostnamectl set-hostname bigData43

hostnamectl set-hostname bigData44

重新ssh链接 即可
2、vim /etc/hosts   不同的机器上


172.16.108.42 bigData42
172.16.108.43 bigData43
172.16.108.44 bigData44

172.16.108.41 bigData41
172.16.108.43 bigData43
172.16.108.44 bigData44

172.16.108.41 bigData41
172.16.108.42 bigData42
172.16.108.44 bigData44

172.16.108.41 bigData41
172.16.108.42 bigData42
172.16.108.43 bigData43

(2)关闭防火墙

systemctl status firewalld.service

systemctl stop firewalld.service

systemctl status firewalld.service

systemctl disable firewalld.service

(3) ssh免密登录

ssh-keygen
cd /root/.ssh/

ssh-copy-id -i id_rsa.pub root@bigData41   // 按不同的机器选择另外3个命令

ssh-copy-id -i id_rsa.pub root@bigData42

ssh-copy-id -i id_rsa.pub root@bigData43

ssh-copy-id -i id_rsa.pub root@bigData44

ssh root@bigData42  验证
 

配置本机免密

cd /root/.ssh/

cat id_rsa.pub >> authorized_keys

配置3台主机的hosts和免密登录,重复做同样操作即可

 

[root@bigdata41 .ssh]# ip link
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN mode DEFAULT group default qlen 1000
    link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
2: eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc mq state UP mode DEFAULT group default qlen 1000
    link/ether 00:16:3e:50:f5:a1 brd ff:ff:ff:ff:ff:ff
[root@bigdata41 .ssh]# sudo cat /sys/class/dmi/id/product_uuid
62403F49-8B39-4FCB-99E0-96E3BEF35763

  1. 禁用 SELinux

setenforce 0

sed -i 's/^SELINUX=enforcing$/SELINUX=disabled/' /etc/selinux/config

(6)设置系统最大打开文件句柄数

sudo vim /etc/security/limits.conf

* soft nofile 65536

* hard nofile 65536

重新登录客户端生效或者重启服务器永久生效,也可以用ulimit -n 65535临时生效。

通过ulimit -a 查看open files

(7)设置进程可以拥有的内存映射区域(mmap)的数量限制

sudo vim /etc/sysctl.conf

vm.max_map_count=2000000

重启永久生效

配置临时生效 sudo sysctl -w vm.max_map_count=2000000

修改后查看:sysctl -a|grep vm.max_map_count

(8)时钟同步
 

使用chrony实现时钟同步:

yum install chrony -y

systemctl start chronyd

systemctl enable chronyd

chronyc sources

(9)关闭交换分区(swap)

临时关闭

sudo swapoff -a

永久关闭

  1. 查看GCC版本,要求大于4.8.2

gcc --version

Docker 安装

删除旧版本docker

sudo yum remove docker docker-client docker-client-latest docker-common \

               docker-latest docker-latest-logrotate docker-logrotate \

                  docker-engin
 

配置yum源

cd /etc/yum.repos.d

mkdir bak

mv CentOS-*.repo bak/

# centos7 (本次使用centos7)   

cp /opt/dockerinstall/docker/CentOS-Base.repo /etc/yum.repos.d/

或下载

wget -O /etc/yum.repos.d/CentOS-Base.repo http://mirrors.aliyun.com/repo/Centos-7.repo

查看 ls /etc/yum.repos.d/

# 安装yum-config-manager配置工具

yum -y install yum-utils

# 设置yum源 

yum-config-manager --add-repo http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo

        1. 安装docker-ce

yum list docker-ce --showduplicates | sort -r  查看可用版本


更新索引:yum makecache fast

yum install -y docker-ce-26.1.4-1.el7

yum list installed | grep docker

启动docker

systemctl start docker

开机自启   systemctl enable docker

docker version

cd /etc/docker/

touch daemon.json

cat >/etc/docker/daemon.json<<EOF

{   "registry-mirrors": ["https://dockerproxy.com","https://ccr.ccs.tencentyun.com","https://hub-mirror.c.163.com","https://developer.aliyun.com/mirror/","https://registry.cn-hangzhou.aliyuncs.com","https://dockerhub.azk8s.cn","https://tcr.tuna.tsinghua.edu.cn/","https://9cpn8tt6.mirror.aliyuncs.com","https://mirror.baidubce.com","https://mirror.ccs.tencentyun.com"],

   "insecure-registries": ["localhost:5000"],

   "live-restore": true}

EOF

systemctl reload docker

查看

systemctl status docker containerd

验证docker :
sudo docker run hello-world

安装JDK

[root@bigDataServer opt]# which java
/usr/bin/java
[root@bigDataServer opt]# ls -l /usr/bin/java
lrwxrwxrwx. 1 root root 22 Jul 22  2024 /usr/bin/java -> /etc/alternatives/java*
[root@bigDataServer opt]# ls -l /etc/alternatives/java
lrwxrwxrwx. 1 root root 73 Jul 22  2024 /etc/alternatives/java -> /usr/lib/jvm/java-1.8.0-openjdk-1.8.0.412.b08-1.el7_9.x86_64/jre/bin/java*

通过 yum 安装 OpenJDK 8

1. 安装 OpenJDK 8 软件包

bash

复制

sudo yum install -y java-1.8.0-openjdk
2. 验证安装路径

安装完成后,Java 可执行文件默认会出现在以下路径:

bash

复制

ls /usr/lib/jvm/java-1.8.0-openjdk-*/jre/bin/java

输出示例:

复制

/usr/lib/jvm/java-1.8.0-openjdk-1.8.0.412.b08-1.el7_9.x86_64/jre/bin/java
3. 检查 Java 版本

bash

复制

java -version
 


 

### 将Vue和Spring Boot应用通过Docker阿里云服务器 #### 准备工作 为了成功完成此过程,需准备如下资源: - **阿里云服务器**台作为运行环境的基础[^1]。 - 安装并配置好`Xshell`和`Xftp`用于远程连接和文件传输工具[^3]。 #### 构建与打包应用程序 对于前端部分即Vue项目,在开发完成后应构建生产版本。进入项目的根目录执行命令来生成静态资源文件夹`dist`: ```bash npm run build ``` 针对后端即Spring Boot程序,则要确保其能够被打包成个可独立运行的JAR文件。通常情况下是在IDE内或是通过Maven/Gradle插件实现自动化打包流程。 #### Dockerfile编写 ##### Spring Boot 应用的 `Dockerfile` 在Spring Boot项目的根路径下创建名为`Dockerfile`的文本文件,并写入以下内容以便于将其构建成Docker镜像: ```dockerfile FROM openjdk:8-jdk-alpine VOLUME /tmp ARG JAR_FILE=target/*.jar COPY ${JAR_FILE} app.jar ENTRYPOINT ["java","-Djava.security.egd=file:/dev/./urandom","-jar","/app.jar"] ``` ##### Vue 应用的 `Dockerfile` 同样地,在Vue项目的根目录建立另个`Dockerfile`,用来定义如何将编译后的前端页面封装至Nginx服务之中: ```dockerfile # 使用官方Node.js基础映像构建阶段 FROM node:lts as builder WORKDIR /app COPY package*.json ./ RUN npm install --silent && mv node_modules ../ COPY . . RUN npm run build # 利用官方Nginx映像发布阶段 FROM nginx:alpine EXPOSE 80 COPY ./nginx.conf /etc/nginx/conf.d/default.conf COPY --from=builder /app/dist /usr/share/nginx/html CMD ["nginx", "-g", "daemon off;"] ``` 这里假设已经有个自定义的`nginx.conf`位于项目根目录中,它指定了如何处理HTTP请求并将它们路由给正确的HTML/CSS/JS资产。 #### 编写 `docker-compose.yml` 为了让前后端可以更便捷地起启动起来,推荐使用Docker Compose来进行多容器协调管理。下面是个简单的例子说明怎样设置这个YAML格式的组合描述文档: ```yaml version: '3' services: backend: image: your-backend-image-name ports: - "8080:8080" environment: SPRING_DATASOURCE_URL: jdbc:mysql://db:3306/your_db_name?useSSL=false&serverTimezone=UTC SPRING_DATASOURCE_USERNAME: root SPRING_DATASOURCE_PASSWORD: password depends_on: - db frontend: image: your-frontend-image-name ports: - "80:80" db: image: mysql:latest environment: MYSQL_ROOT_PASSWORD: password MYSQL_DATABASE: your_db_name ``` 请注意替换上述模板中的占位符(如`your-backend-image-name`, `your-db-name`等),使其匹配实际的应用名称和服务细节。 #### 推送镜像到仓库 & 远程部 旦所有的本地测试都顺利完成之后,就可以考虑把制作好的Docker镜像推送到公共或私有的注册中心去了。这步骤允许其他机器轻松下载所需组件而无需重复整个构建过程。接着借助诸如Ansible、Terraform之类的基础设施即代码(IaC)工具或者是手动方式登录到目标阿里云实例上去拉取这些最新的镜像并按照之前设定好的compose文件启动相应的服务即可[^2]。 #### 使用宝塔面板简化操作 如果倾向于图形界面的操作体验的话,那么安装了宝塔Linux面板将会是个不错的选择。该平台不仅提供了直观易懂的Web UI让用户能快速上手各种运维任务,而且还集成了对Docker的支持功能模块——比如可以直接在线查找并加载官方提供的MySQL, Redis等各种常用数据库系统的最新稳定版镜像;亦可通过上传提前准备完毕的`.tar.gz`压缩包形式导入私人定制化的web应用镜像[^4]。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值