|
@@ -12,12 +12,64 @@ FROM jianboy/flutter-dev-container:3.13.5
|
|
|
|
|
|
## Develop
|
|
|
|
|
|
+锁定版本:
|
|
|
+
|
|
|
+```
|
|
|
+flutter 2.0.5
|
|
|
+dart 2.12.3
|
|
|
+gradle 7.4-all
|
|
|
+java 17
|
|
|
+kotlin 1.7.10
|
|
|
+android sdk 33
|
|
|
+```
|
|
|
+
|
|
|
+```
|
|
|
+flutter 3.7.12
|
|
|
+dart 2.19.6
|
|
|
+gradle 7.4-all
|
|
|
+java 17
|
|
|
+kotlin 1.7.10
|
|
|
+android sdk 21-33
|
|
|
+```
|
|
|
+
|
|
|
+```
|
|
|
+flutter 3.19.6
|
|
|
+dart
|
|
|
+gradle tool 7.2.2 gradle-7.5-all.zip
|
|
|
+java 17.0.11-ms
|
|
|
+21.0.1-ms
|
|
|
+11.0.23-ms
|
|
|
+
|
|
|
+kotlin 1.7.10
|
|
|
+android sdk 21-33
|
|
|
+
|
|
|
+```
|
|
|
+
|
|
|
+coding 目前在用的版本:
|
|
|
+
|
|
|
+```
|
|
|
+sift-docker.pkg.coding.net/flutter-team/dev-container/dev-allinone:1.0.9-flutter
|
|
|
+```
|
|
|
+支持flutter开发
|
|
|
+
|
|
|
+```
|
|
|
+sift-docker.pkg.coding.net/flutter-team/dev-container/dev-allinone:1.0.11-flutter
|
|
|
+```
|
|
|
+支持 flutter 开发
|
|
|
+更新 python3 支持,环境变量添加到.bashrc
|
|
|
+
|
|
|
+
|
|
|
+Codespaces在用的版本:
|
|
|
+
|
|
|
+codespaces默认环境就集成了众多开发语言,但是不包含flutter,为此只需要未flutter创建容器即可:
|
|
|
```
|
|
|
docker login --username jianboy
|
|
|
docker build -f .devcontainer/Dockerfile2 -t jianboy/flutter-dev-container:3.13.5 .
|
|
|
docker push jianboy/flutter-dev-container:3.13.5
|
|
|
|
|
|
```
|
|
|
+已知问题:无法使用docker,无其他环境
|
|
|
+
|
|
|
|
|
|
构建 apk
|
|
|
```
|
|
@@ -54,18 +106,9 @@ rclone 同步apk
|
|
|
```
|
|
|
|
|
|
|
|
|
-## 构建 flutter Android 项目
|
|
|
-
|
|
|
-## 构建 flutter IOS 项目
|
|
|
-
|
|
|
-本章介绍通过github托管代码,每次提交代码,github action自动触发构建,发布IOS。
|
|
|
-
|
|
|
-### 步骤
|
|
|
+## GitHub Action ipa:
|
|
|
|
|
|
-* 安装 Apple证书
|
|
|
-* 构建App
|
|
|
-* 签名
|
|
|
-* 发布
|
|
|
+本章介绍通过 github 托管代码,每次提交代码,github action 自动触发构建ipa,发布IOS。
|
|
|
|
|
|
### 安装 Apple 证书
|
|
|
|
|
@@ -82,8 +125,7 @@ P12_PASSWORD
|
|
|
p12-password: ${{ secrets.P12_PASSWORD }}
|
|
|
```
|
|
|
|
|
|
-
|
|
|
-# Android studio 构建apk
|
|
|
+## Github Action 构建发布 apk
|
|
|
|
|
|
包含初始化安卓环境,构建,推送消息,提交,上传到应用商店等等
|
|
|
|
|
@@ -109,55 +151,53 @@ docker push
|
|
|
|
|
|
```
|
|
|
|
|
|
-# dev
|
|
|
|
|
|
-基于 docker 快速切换版本开发环境
|
|
|
|
|
|
-## nodejs
|
|
|
+## Jenkins
|
|
|
|
|
|
-如,项目需要在node14环境下开发,可以使用以下方式:
|
|
|
+通过docker快速启动一个 Jenkins 服务,配置好环境变量,插件,构建任务,即可实现自动化构建,部署,通知等功能。
|
|
|
|
|
|
```
|
|
|
-docker run --rm -it -v /workspace:/app node:14 /bin/bash
|
|
|
-
|
|
|
+docker run -d -p 8080:8080 -p 50000:50000 -v /var/jenkins_home:/var/jenkins_home jenkins/jenkins:lts
|
|
|
```
|
|
|
|
|
|
--v /workspace:/app 挂载本地目录到容器内,/workspace 为本地目录,/app 为容器内目录
|
|
|
+配置文件`android-studio\Jenkinsfile`
|
|
|
|
|
|
-### 额外配置
|
|
|
+## travis
|
|
|
|
|
|
-有时候,项目需要一些额外开发环境,可以新建一个 Dockerfile 文件,构建一个本地镜像
|
|
|
-
|
|
|
-```Dockerfile
|
|
|
-FROM node:14
|
|
|
-WORKDIR /app
|
|
|
-# todo
|
|
|
-```
|
|
|
+travis是比较早的ci/cd平台,通过 travis-ci 实现自动化构建,部署,通知等功能。主要提供php,nodejs,python等语言的支持,目前是收费的。
|
|
|
|
|
|
-然后使用该镜像启动容器:
|
|
|
-```
|
|
|
-docker build -t jianboy/node-hexo:14 .
|
|
|
+配置 `android-studio\.travis.yml`
|
|
|
|
|
|
-docker run --rm -it -v /workspace:/app node:14 /bin/bash
|
|
|
|
|
|
-```
|
|
|
+## fastlane
|
|
|
|
|
|
+## AppCenter
|
|
|
|
|
|
+## Gitpod
|
|
|
|
|
|
-## python
|
|
|
-
|
|
|
-如,项目需要在python3.8环境下开发,可以使用以下方式:
|
|
|
+通过 `.gitpod.yml`和 `.gitpod.Dockfile` 配置开发环境,实现远程开发。
|
|
|
|
|
|
```
|
|
|
-docker run --rm -it -v /workspace:/app python:3.8 /bin/bash
|
|
|
+FROM gitpod/workspace-full-vnc
|
|
|
|
|
|
```
|
|
|
+容器包含 VNC 服务,可以通过浏览器访问远程桌面,在做桌面开发十分有效。
|
|
|
|
|
|
-## golang
|
|
|
+此外提供了很多开发环境,如 nodejs,python,java,go,rust等等,可以安装 Chrome 浏览器,远程连接 adb。
|
|
|
|
|
|
-如,项目需要在golang1.15环境下开发,可以使用以下方式:
|
|
|
+## Gitlab CI
|
|
|
|
|
|
-```
|
|
|
-docker run --rm -it -v /workspace:/app golang:1.15 /bin/bash
|
|
|
+配置 `.gitlab-ci.yml` 文件,实现自动化构建,部署,通知等功能。
|
|
|
|
|
|
-```
|
|
|
+
|
|
|
+## Azure DevOps
|
|
|
+
|
|
|
+一般用来开发微软相关的项目,如.net,azure等,提供windows,linux,mac主机构建,。
|
|
|
+
|
|
|
+配置 `dotnet\azure-pipelines.yml`
|
|
|
+
|
|
|
+
|
|
|
+## circleci
|
|
|
+
|
|
|
+## bitrise
|