docker 部署
为了搭建 高性能、高负载、高可用 的系统,开始了本课程的学习。
1. 整体架构
整体架构
2. 简化部署结构
简化部署结构
3. 软件环境 (自底向上)
Wmware虚拟机(或者CentOS机器)
Docker虚拟机(舱壁隔离)
JDK、MySQL、Redis(高速缓存)、Nginx(负载均衡)、Node.js(编译前台工程)
4. 部署方案
部署方案
第二章 renren-fast项目介绍
1. renren-fast后台项目
技术选型
renren-fast后台项目
2. renren-fast前端项目
技术选型
renren-fast前端项目
本地前端项目的运行
1
2
3
4
5
6
# 克隆项目
git clone https://github.com/daxiongYang/renren-fast-vue.git
# 安装依赖
npm install
# 启动服务
npm run dev
第三章(上) 基础知识-Linux
1. Linux 的优势
跨平台的硬件支持
丰富的软件支持
多用户多任务(权限控制)
可靠的安全性(权限管理比较完善,病毒难以获得较高权限)
良好的稳定性(安装程序时不需要重启系统)
完善的网络功能(自带网络防火墙)
2. Linux 目录结构
Linux目录结构
3. Linux 目录与文件管理
# 创建文件夹
mkdir newproject
# 创建文件
touch hello.txt
# 给文件写入内容(简单的写入)
echo Thanks>hello.txt
# 文件编辑
vi hello.txt
# 复制文件
cp hello.txt new.txt
# 复制文件夹(-r是递归操作)
cp -r myproject newproject
# 删除文件
rm hello.txt
# 删除文件夹(r:递归删除 f:强制删除)【谨慎操作】
rm -rf myproject
# 移动文件(-f 强制覆盖已存在的目录或文件)
mv -f newproject /home
4. Linux 文件属性及权限
1
2
# 查看文件属性
ls -l [可以写具体的文件或者目录,不写即使列出该目录下全部]
4.1 Linux文件属性
Linux文件属性
文件类型 (第一位)
属主权限 (后三位为一组)(创建改文件的用户 具有的权限)
属组权限 (后三位为一组)(创建该文件的用户所在用户组 具有的权限)
其他用户权限(最后三位为一组)(创建该文件的用户所不在的用户组 具有的权限)
4.2 Linux文件详细目录
Linux文件详细信息
4.3 Linux修改文件权限
1
chmod 700 hello.txt
解释:700的含义,各个权限相加等于一位数字。
r : 4
w : 2
x : 1
所以上述700的含义是: 将该文件的权限改为:属主可读可写可执行;属组无权限;其他用户组无权限。
5. Linux 防火墙的管理
5.1 防火墙意义
Linux防火墙意义
5.2 相关指令
1
2
3
4
5
6
7
8
# 查看状态
firewall-cmd --state
# 启动
service firewall start
# 关闭
service firewall stop
# 重启
service firewall restart
5.3 管理防火墙的 网络端口
1
2
3
4
5
6
7
8
9
10
# 添加端口(开放一批端口)
firewall-cmd --permanent --add-port=8080-8085/tcp
# 加载最新设置
firewall-cmd --reload
# 删除端口 (要和添加端口的时候保持一致)
firewall-cmd --permanent --remove-port=8080-8085/tcp
# 查看防火墙开放了哪些端口【看ports】
firewall-cmd --permanent --list-ports
# 查看防火墙通过上述端口开始了哪些服务【看services】
firewall-cmd --permanent --list-services
第三章(下) 基础知识-Docker虚拟机
1. Docker虚拟机架构
Docker创建的所有虚拟实例共用同一个Linux内核,对硬件占用比较小,属于轻量级虚拟机。
Docker虚拟机架构
2.Docker虚拟机与云计算
Docker虚拟机与云计算
iaas : Infrastructure-as-a-Service (Docker做虚拟主机)
paas : Platform-as-a-Service (Docker的容器可以安装相应的中间件,并生成镜像文件)
saas : Software-as-a-Service (Docker的容器里面部署上项目,并生成镜像文件)
3.镜像与容器
镜像与容器
4. Docker相关指令
4.1 安装(先更新yum,再安装Docker):
1
2
yum -y uodate
yum install -y docker
4.2 启动、关闭与重启:
1
2
3
service docker start
service docker stop
service docker restart
4.3 Docker常用指令:
Docker常用指令
配置docker加速器:daocloud网站,配置完成后即安装相应镜像
1
2
3
4
5
6
# 在镜像仓库里面搜索跟java相关的镜像文件
docker search java
# 下载合适的镜像文件
docker pull java
# 查看已经安装的镜像
docker images
导出导入镜像 (压缩文件的形式)
1
2
3
4
5
6
# 导出
docker save java > /home/java.tar.gz
# 导入
docker load < /home/java.tar.gz
# 删除
rmi java
启动容器(以下指令,参数可叠加)
1
2
3
4
5
6
7
8
9
10
#1. 启动镜像会创建出一个运行状态的容器, -it:启动容器后开启交互界面; --name:给容器起名字; java:镜像的名字; bash:运行程序时bash命令行
docker run -it --name myjava java bash
#2. 启动镜像的时候做端口映射,-p:映射端口,9000:宿主机端口,8080:容器端口;
# (解释:把容器的8080端口映射到真实的宿主机的9000端口上)
docker run -it --name myjava -p 9000:8080 -p 9001:8085 java bash
#3. 文件或者目录的映射, -v:文件映射, /home/project:宿主机真实文件目录; soft:容器的目录; --privileged:给容器富有最高权限
# (解释:将宿主机的/home/project目录 映射到 容器的soft目录, 并且给soft目录最高的文件读、写、执行权限)
docker run -it --name myjava -v /home/project:/soft --privileged java bash
暂停和停止容器
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
# 暂停容器(myjava是容器的名字,或者根据容器的编号)
docker pause myjava
# 恢复运行
docker unpause myjava
# 停止容器
docker stop myjava
# 恢复运行
docker start -i myjava
# 退出容器的交互界面,同时也stop容器
exit
# 删除容器
docker rm myjava
# 查看现存容器
docker ps -a
sklearn 特征提取
线程复用:线程池笔记
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· AI与.NET技术实操系列(二):开始使用ML.NET
· 记一次.NET内存居高不下排查解决与启示
· 探究高空视频全景AR技术的实现原理
· 理解Rust引用及其生命周期标识(上)
· 浏览器原生「磁吸」效果!Anchor Positioning 锚点定位神器解析
· DeepSeek 开源周回顾「GitHub 热点速览」
· 物流快递公司核心技术能力-地址解析分单基础技术分享
· .NET 10首个预览版发布:重大改进与新特性概览!
· AI与.NET技术实操系列(二):开始使用ML.NET
· 单线程的Redis速度为什么快?
2018-02-05 两天快速开发一个自己的微信小程序