feat: add Heroku

This commit is contained in:
zizifn
2020-12-12 22:46:23 +08:00
committed by zizifn3
parent d0c115838e
commit 1b854779f7
5 changed files with 94 additions and 0 deletions

23
.github/workflows/heroku.yml vendored Normal file
View File

@@ -0,0 +1,23 @@
on:
push:
branches:
- master
jobs:
build:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v2
- uses: akhileshns/heroku-deploy@v3.7.8 # This is the action
with:
heroku_api_key: ${{secrets.HEROKU_API_KEY}}
heroku_app_name: ${{secrets.APP_NAME}} #Must be unique in Heroku
heroku_email: ${{secrets.EMAIL}}
usedocker: true
# docker_build_args: |
# NODE_ENV
# SECRET_KEY
env:
NODE_ENV: production
SECRET_KEY: ${{ secrets.MY_SECRET_KEY }}
UUID: ${{ secrets.HEROKU_V2RAY_UUID }}

8
Dockerfile Normal file
View File

@@ -0,0 +1,8 @@
FROM alpine:3.5
ADD configure.sh /configure.sh
RUN apk add --no-cache ca-certificates curl unzip \
&& chmod +x /configure.sh
CMD /configure.sh

16
app.json Normal file
View File

@@ -0,0 +1,16 @@
{
"name": "V2Ray",
"description": "Deploy V2ray on Heroku.",
"keywords": [
"V2Ray"
],
"env": {
"UUID": {
"description": "V2Ray UUID",
"value": "uuid"
}
},
"website": "https://ibcl.us/Heroku-V2Ray_20191014/",
"repository": "https://github.com/bclswl0827/v2ray-heroku",
"stack": "container"
}

44
configure.sh Normal file
View File

@@ -0,0 +1,44 @@
#!/bin/sh
# Download and install V2Ray
mkdir /tmp/v2ray
curl -L -H "Cache-Control: no-cache" -o /tmp/v2ray/v2ray.zip https://github.com/v2fly/v2ray-core/releases/latest/download/v2ray-linux-64.zip
unzip /tmp/v2ray/v2ray.zip -d /tmp/v2ray
install -m 755 /tmp/v2ray/v2ray /usr/local/bin/v2ray
install -m 755 /tmp/v2ray/v2ctl /usr/local/bin/v2ctl
# Remove temporary directory
rm -rf /tmp/v2ray
# V2Ray new configuration
install -d /usr/local/etc/v2ray
cat << EOF > /usr/local/etc/v2ray/config.json
{
"inbounds": [
{
"port": $PORT,
"protocol": "vmess",
"settings": {
"clients": [
{
"id": "$UUID",
"alterId": 64
}
],
"disableInsecureEncryption": true
},
"streamSettings": {
"network": "ws"
}
}
],
"outbounds": [
{
"protocol": "freedom"
}
]
}
EOF
# Run V2Ray
/usr/local/bin/v2ray -config /usr/local/etc/v2ray/config.json

3
heroku.yml Normal file
View File

@@ -0,0 +1,3 @@
build:
docker:
web: Dockerfile