u
This commit is contained in:
1 parent
d4b11a1c55
commit
09a699fbfe
4 files changed
+288
No files matched your search
@@ -0,0 +1,13 @@
|
|||||||
|
version: '3'
|
||||||
|
name: build
|
||||||
|
services:
|
||||||
|
build:
|
||||||
|
build:
|
||||||
|
context: .
|
||||||
|
dockerfile: dockerfile.build
|
||||||
|
image: build
|
||||||
|
container_name: app
|
||||||
|
tty: true
|
||||||
|
stdin_open: true
|
||||||
|
volumes:
|
||||||
|
- ./:/WWW/APP/
|
||||||
@@ -0,0 +1,14 @@
|
|||||||
|
FROM mobiledevops/android-sdk-image:latest
|
||||||
|
|
||||||
|
RUN apt update \
|
||||||
|
&& apt install -y nodejs npm
|
||||||
|
RUN npm i -g eas-cli expo yarn
|
||||||
|
|
||||||
|
COPY ./ /WWW/APP
|
||||||
|
WORKDIR /WWW/APP
|
||||||
|
|
||||||
|
ENV EXPO_TOKEN=FFb6cn9saprFaYji0JVywV0RiNIB7t-PpUKO3jKQ
|
||||||
|
ENV NODE_ENV=production
|
||||||
|
|
||||||
|
RUN npm i
|
||||||
|
CMD eas build --platform android --profile release --local
|
||||||
@@ -0,0 +1,26 @@
|
|||||||
|
{
|
||||||
|
"cli": {
|
||||||
|
"version": ">= 14.2.0",
|
||||||
|
"appVersionSource": "local"
|
||||||
|
},
|
||||||
|
"build": {
|
||||||
|
"development": {
|
||||||
|
"developmentClient": true,
|
||||||
|
"distribution": "internal"
|
||||||
|
},
|
||||||
|
"preview": {
|
||||||
|
"distribution": "internal"
|
||||||
|
},
|
||||||
|
"production": {
|
||||||
|
"environment": "production",
|
||||||
|
"autoIncrement": true,
|
||||||
|
"android": {
|
||||||
|
"buildType": "apk"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"submit": {
|
||||||
|
"production": {}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
@@ -0,0 +1,235 @@
|
|||||||
|
## docker 和 docker compose安装
|
||||||
|
|
||||||
|
### 脚本命令
|
||||||
|
|
||||||
|
```bash
|
||||||
|
# 1.创建脚本
|
||||||
|
vim docker-script.sh
|
||||||
|
|
||||||
|
# 2.输入内容 i 进行编辑模式, :wq 保存
|
||||||
|
|
||||||
|
# 3.赋予权限
|
||||||
|
chmod +x docker-script.sh
|
||||||
|
|
||||||
|
# 4.运行脚本
|
||||||
|
./docker-script.sh
|
||||||
|
```
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
### 对于基于Debian的系统(如Ubuntu、Debian)
|
||||||
|
|
||||||
|
```bash
|
||||||
|
#!/bin/bash
|
||||||
|
|
||||||
|
# -------------------------
|
||||||
|
# 1️⃣ 卸载旧版本 Docker
|
||||||
|
# -------------------------
|
||||||
|
sudo apt-get remove -y \
|
||||||
|
docker \
|
||||||
|
docker-engine \
|
||||||
|
docker.io \
|
||||||
|
containerd \
|
||||||
|
runc \
|
||||||
|
docker-ce \
|
||||||
|
docker-ce-cli \
|
||||||
|
containerd.io \
|
||||||
|
docker-compose-plugin
|
||||||
|
|
||||||
|
# 可选:清理残留数据(慎用,会删除容器和镜像)
|
||||||
|
# sudo rm -rf /var/lib/docker /var/lib/containerd
|
||||||
|
|
||||||
|
echo "旧版本 Docker 已卸载(如果存在)"
|
||||||
|
|
||||||
|
# -------------------------
|
||||||
|
# 2️⃣ 更新软件包列表并安装必要依赖
|
||||||
|
# -------------------------
|
||||||
|
sudo apt-get update
|
||||||
|
sudo apt-get install -y ca-certificates curl software-properties-common lsb-release
|
||||||
|
|
||||||
|
# -------------------------
|
||||||
|
# 3️⃣ 创建密钥存储目录
|
||||||
|
# -------------------------
|
||||||
|
sudo install -m 0755 -d /etc/apt/keyrings
|
||||||
|
|
||||||
|
# -------------------------
|
||||||
|
# 4️⃣ 下载Docker官方GPG密钥
|
||||||
|
# -------------------------
|
||||||
|
sudo curl -fsSL https://download.docker.com/linux/$(. /etc/os-release; echo "$ID")/gpg -o /etc/apt/keyrings/docker.asc
|
||||||
|
sudo chmod a+r /etc/apt/keyrings/docker.asc
|
||||||
|
|
||||||
|
# -------------------------
|
||||||
|
# 5️⃣ 添加 Docker 仓库
|
||||||
|
# -------------------------
|
||||||
|
if [ "$(lsb_release -is)" = "Ubuntu" ]; then
|
||||||
|
echo \
|
||||||
|
"deb [arch=$(dpkg --print-architecture) signed-by=/etc/apt/keyrings/docker.asc] https://download.docker.com/linux/ubuntu \
|
||||||
|
$(lsb_release -cs) stable" | sudo tee /etc/apt/sources.list.d/docker.list > /dev/null
|
||||||
|
elif [ "$(lsb_release -is)" = "Debian" ]; then
|
||||||
|
echo \
|
||||||
|
"deb [arch=$(dpkg --print-architecture) signed-by=/etc/apt/keyrings/docker.asc] https://download.docker.com/linux/debian \
|
||||||
|
$(lsb_release -cs) stable" | sudo tee /etc/apt/sources.list.d/docker.list > /dev/null
|
||||||
|
fi
|
||||||
|
|
||||||
|
sudo apt-get update
|
||||||
|
echo "Docker 仓库已添加。"
|
||||||
|
|
||||||
|
# -------------------------
|
||||||
|
# 6️⃣ 安装 Docker 及相关组件
|
||||||
|
# -------------------------
|
||||||
|
sudo apt-get install -y docker-ce docker-ce-cli containerd.io docker-compose-plugin
|
||||||
|
|
||||||
|
echo "Docker 安装完成 ✅"
|
||||||
|
```
|
||||||
|
|
||||||
|
### 对于基于RHEL的系统(如CentOS、RHEL)
|
||||||
|
|
||||||
|
```bash
|
||||||
|
#!/bin/bash
|
||||||
|
|
||||||
|
# -------------------------
|
||||||
|
# 1️⃣ 卸载旧版本 Docker
|
||||||
|
# -------------------------
|
||||||
|
sudo yum remove -y docker \
|
||||||
|
docker-client \
|
||||||
|
docker-client-latest \
|
||||||
|
docker-common \
|
||||||
|
docker-latest \
|
||||||
|
docker-latest-logrotate \
|
||||||
|
docker-logrotate \
|
||||||
|
docker-engine \
|
||||||
|
docker-ce \
|
||||||
|
docker-ce-cli \
|
||||||
|
containerd.io \
|
||||||
|
docker-compose-plugin
|
||||||
|
|
||||||
|
echo "旧版本 Docker 已卸载(如果存在)"
|
||||||
|
|
||||||
|
# -------------------------
|
||||||
|
# 2️⃣ 安装 yum 配置管理工具
|
||||||
|
# -------------------------
|
||||||
|
sudo yum install -y yum-utils
|
||||||
|
|
||||||
|
# -------------------------
|
||||||
|
# 3️⃣ 检测系统发行版并添加 Docker 仓库
|
||||||
|
# -------------------------
|
||||||
|
if [ -f /etc/centos-release ]; then
|
||||||
|
# CentOS 系统
|
||||||
|
sudo yum-config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repo
|
||||||
|
elif [ -f /etc/redhat-release ]; then
|
||||||
|
# RHEL 系统
|
||||||
|
# 注意:RHEL 用户需要启用订阅管理仓库
|
||||||
|
sudo yum-config-manager --add-repo https://download.docker.com/linux/rhel/docker-ce.repo
|
||||||
|
else
|
||||||
|
echo "未识别的发行版,脚本退出。"
|
||||||
|
exit 1
|
||||||
|
fi
|
||||||
|
|
||||||
|
# -------------------------
|
||||||
|
# 4️⃣ 更新 yum 缓存
|
||||||
|
# -------------------------
|
||||||
|
sudo yum makecache fast
|
||||||
|
echo "Docker 仓库已添加。"
|
||||||
|
|
||||||
|
# -------------------------
|
||||||
|
# 5️⃣ 安装 Docker 及相关组件
|
||||||
|
# -------------------------
|
||||||
|
sudo yum install -y docker-ce docker-ce-cli containerd.io docker-compose-plugin
|
||||||
|
|
||||||
|
echo "Docker 安装完成 ✅"
|
||||||
|
```
|
||||||
|
|
||||||
|
### 通用脚本
|
||||||
|
|
||||||
|
```bash
|
||||||
|
#!/bin/bash
|
||||||
|
|
||||||
|
set -e
|
||||||
|
|
||||||
|
# -------------------------
|
||||||
|
# 1️⃣ 卸载旧版本 Docker
|
||||||
|
# -------------------------
|
||||||
|
remove_old_docker() {
|
||||||
|
if command -v apt-get >/dev/null 2>&1; then
|
||||||
|
sudo apt-get remove -y docker docker-engine docker.io containerd runc docker-ce docker-ce-cli containerd.io docker-compose-plugin || true
|
||||||
|
elif command -v yum >/dev/null 2>&1; then
|
||||||
|
sudo yum remove -y docker \
|
||||||
|
docker-client \
|
||||||
|
docker-client-latest \
|
||||||
|
docker-common \
|
||||||
|
docker-latest \
|
||||||
|
docker-latest-logrotate \
|
||||||
|
docker-logrotate \
|
||||||
|
docker-engine \
|
||||||
|
docker-ce \
|
||||||
|
docker-ce-cli \
|
||||||
|
containerd.io \
|
||||||
|
docker-compose-plugin || true
|
||||||
|
fi
|
||||||
|
echo "旧版本 Docker 已卸载(如果存在)"
|
||||||
|
}
|
||||||
|
|
||||||
|
# -------------------------
|
||||||
|
# 2️⃣ 安装 Docker(DEB 系统)
|
||||||
|
# -------------------------
|
||||||
|
install_docker_deb() {
|
||||||
|
local distro=$1
|
||||||
|
local codename=$2
|
||||||
|
sudo apt-get update
|
||||||
|
sudo apt-get install -y apt-transport-https ca-certificates curl software-properties-common lsb-release
|
||||||
|
sudo install -m 0755 -d /etc/apt/keyrings
|
||||||
|
sudo curl -fsSL "https://download.docker.com/linux/$distro/gpg" -o /etc/apt/keyrings/docker.asc
|
||||||
|
sudo chmod a+r /etc/apt/keyrings/docker.asc
|
||||||
|
echo "deb [arch=$(dpkg --print-architecture) signed-by=/etc/apt/keyrings/docker.asc] https://download.docker.com/linux/$distro $codename stable" | sudo tee /etc/apt/sources.list.d/docker.list > /dev/null
|
||||||
|
sudo apt-get update
|
||||||
|
sudo apt-get install -y docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin
|
||||||
|
sudo systemctl enable --now docker
|
||||||
|
}
|
||||||
|
|
||||||
|
# -------------------------
|
||||||
|
# 3️⃣ 安装 Docker(RPM 系统)
|
||||||
|
# -------------------------
|
||||||
|
install_docker_rpm() {
|
||||||
|
local distro=$1
|
||||||
|
if [ "$distro" = "fedora" ]; then
|
||||||
|
sudo dnf -y install dnf-plugins-core
|
||||||
|
else
|
||||||
|
sudo yum install -y yum-utils
|
||||||
|
fi
|
||||||
|
sudo yum-config-manager --add-repo "https://download.docker.com/linux/$distro/docker-ce.repo"
|
||||||
|
sudo yum makecache fast
|
||||||
|
sudo yum install -y docker-ce docker-ce-cli containerd.io docker-compose-plugin
|
||||||
|
sudo systemctl enable --now docker
|
||||||
|
}
|
||||||
|
|
||||||
|
# -------------------------
|
||||||
|
# 4️⃣ 主流程
|
||||||
|
# -------------------------
|
||||||
|
remove_old_docker
|
||||||
|
|
||||||
|
# 检测 Linux 发行版
|
||||||
|
if [ -f /etc/os-release ]; then
|
||||||
|
. /etc/os-release
|
||||||
|
else
|
||||||
|
echo "无法确定您的 Linux 发行版。"
|
||||||
|
exit 1
|
||||||
|
fi
|
||||||
|
|
||||||
|
case $ID in
|
||||||
|
ubuntu|debian|raspbian)
|
||||||
|
echo "检测到 $ID $VERSION_CODENAME,开始安装 Docker..."
|
||||||
|
install_docker_deb $ID $VERSION_CODENAME
|
||||||
|
;;
|
||||||
|
centos|rhel|fedora|sles)
|
||||||
|
echo "检测到 $ID,开始安装 Docker..."
|
||||||
|
install_docker_rpm $ID
|
||||||
|
;;
|
||||||
|
*)
|
||||||
|
echo "不支持的 Linux 发行版:$ID"
|
||||||
|
exit 1
|
||||||
|
;;
|
||||||
|
esac
|
||||||
|
|
||||||
|
echo "Docker 及 Docker Compose 安装完成 ✅"
|
||||||
|
```
|
||||||
|
|
||||||
Reference in new issue
Block a user