ARM下docker运行nolanjdc

话不多说直接开整,以下内容基于 ubuntu 20.04 LTS ARM,其他架构请忽略本文

1. build docker镜像

使用巨硬官方的 dockerfile ,安装 chromium 和依赖库,设置时区,为了节省镜像空间,并未打包 nolanjdc 源码

# vim Dockerfile

ARG REPO=mcr.microsoft.com/dotnet/runtime

# Installer image
FROM arm64v8/buildpack-deps:bullseye-curl as installer

# Retrieve ASP.NET Core
RUN curl -fSL --output aspnetcore.tar.gz https://dotnetcli.azureedge.net/dotnet/aspnetcore/Runtime/5.0.13/aspnetcore-runtime-5.0.13-linux-arm64.tar.gz \
    && aspnetcore_sha512='757ccf8a453d8cc9075a438d02bf95bb6d3738651100de8d4ae842a97dc10d8d7507597ec9d2806a3140d8000faec602748b4585b0a644816c74ebbf7ab98719' \
    && echo "$aspnetcore_sha512  aspnetcore.tar.gz" | sha512sum -c - \
    && tar -ozxf aspnetcore.tar.gz ./shared/Microsoft.AspNetCore.App \
    && rm aspnetcore.tar.gz

# ASP.NET Core image
FROM $REPO:5.0.13-bullseye-slim-arm64v8

ENV ASPNET_VERSION=5.0.13

COPY --from=installer ["/shared/Microsoft.AspNetCore.App", "/usr/share/dotnet/shared/Microsoft.AspNetCore.App"]

#以下使我增加内容,设置时区,安装chromium,设置工作区
RUN apt update \
    && apt install chromium libgdiplus -y \
    && ln -fs /usr/share/zoneinfo/Asia/Shanghai /etc/localtime \
    && echo Asia/Shanghai > /etc/timezone \
    && dpkg-reconfigure --frontend noninteractive tzdata \
    && rm -rf /var/lib/apt/lists/* /var/cache/apt/archives/* \
    && ln -s /usr/bin/chromium /usr/bin/chromium-browser \
    && ln -s /usr/lib/libgdiplus.so /usr/lib/gdiplus.dll

WORKDIR /root/nolanjdc

使用以下命令 build 镜像

# docker build -t nolanjdc:arm .

编译完成后查看镜像

# docker images
REPOSITORY                         TAG                            IMAGE ID       CREATED             SIZE
nolanjdc                           arm                            5023a36fb9cb   11 minutes ago      909MB

2.安装 docker-compose

使用 docker-compose可以很方便的管理多个容器,使用以下命令安装 docker-compose 

# apt install python-pip
# apt install libssl-dev libffi-dev
# pip install docker-compose

3. 拉取 nolanjdc 源码

Config.json 配置请按需修改,主要注意  "Captchaurl": "http://nvjdccaptcha:5000"

# git clone 大佬已经跑路,原项目地址已经被李鬼抢占,请勿使用。.git /root/nolanjdc

#新建修改配置文件
# mkdir -p  Config && cd Config
# vim Config.json
{
  ///浏览器最多几个网页
  "MaxTab": "4",
  //网站标题
  "Title": "NolanJDCloud",
  //回收时间分钟 不填默认3分钟
  "Closetime": "5",
  //网站公告
  "Announcement": "为提高账户的安全性,请关闭免密支付。",
  //Opencv镜像地址  刚刚镜像的地址
  "Captchaurl": "http://nvjdccaptcha:5000",
  ///开启打印等待日志卡短信验证登陆 可开启 拿到日志群里回复 默认不要填写
  "Debug": "",
  ///自动滑块次数5次 5次后手动滑块 可设置为0默认手动滑块
  "AutoCaptchaCount": "0",
  ///XDD PLUS Url  http://IP地址:端口/api/login/smslogin
  "XDDurl": "",
  ///xddToken
  "XDDToken": "",
  ///登陆预警 0 0 12 * * ?  每天中午十二点 https://www.bejson.com/othertools/cron/ 表达式在线生成网址
  "ExpirationCron": " 0 0 12 * * ?",
  ///个人资产 0 0 10,20 * * ?  早十点晚上八点
  "BeanCron": "0 0 10,20 * * ?",
  // ======================================= WxPusher 通知设置区域 ===========================================
  // 此处填你申请的 appToken. 官方文档:https://wxpusher.zjiecode.com/docs
  // WP_APP_TOKEN 可在管理台查看: https://wxpusher.zjiecode.com/admin/main/app/appToken
  // MainWP_UID 填你自己uid
  ///这里的通知只用于用户登陆 删除 是给你的通知
  "WP_APP_TOKEN": "",
  "MainWP_UID": "",
  // ======================================= pushplus 通知设置区域 ===========================================
  ///Push Plus官方网站:http: //www.pushplus.plus  只有青龙模式有用
  ///下方填写您的Token,微信扫码登录后一对一推送或一对多推送下面的token,只填" "PUSH_PLUS_TOKEN",
  "PUSH_PLUS_TOKEN": "",
  //下方填写您的一对多推送的 "群组编码" ,(一对多推送下面->您的群组(如无则新建)->群组编码)
  "PUSH_PLUS_USER": "",
  ///青龙配置  注意对接XDD 对接芝士 设置为"Config":[]
  "Config": [
    {
      //序号必填从1 开始
      "QLkey": 1,
      //服务器名称
      "QLName": "阿里云",
      //青龙地址
      "QLurl": "http://ip:5700",
      //青龙2,9 OpenApi Client ID
      "QL_CLIENTID": "",
      //青龙2,9 OpenApi Client Secret
      "QL_SECRET": "",
      //CK最大数量
      "QL_CAPACITY": 99,
      ///建议一个青龙一个WxPusher 应用
      "WP_APP_TOKEN": ""
    }
  ]

}

4.创建 docker-compose 文件并启动容器

新建文件docker-compose.yaml

# vim docker-compose.yaml

version: '3.7'
services:
  nvjdccaptcha:
    image: nolanhzy/nvjdccaptcha:arm
    container_name: nvjdccaptcha
    restart: always
    privileged: true

  nolanjdc:
    image: nolanjdc:arm
    container_name: nolanjdc
    restart: always
    ports:
      - "5701:5701"                    #映射本地端口到容器
    volumes:
      - "/root/nolanjdc:/root/nolanjdc"    #映射本地本地目录到容器
    command: /bin/bash -c "dotnet NETJDC.dll --urls=http://*:5701 1>log"

启动

# docker-compose up -d

查看启动后的容器

# docker ps
CONTAINER ID   IMAGE                       COMMAND                  CREATED          STATUS                  PORTS                                                                        NAMES
f24de50cc09d   nolanjdc:arm                "/bin/bash -c 'dotne…"   31 minutes ago   Up 31 minutes           127.0.0.1:5701->5701/tcp                                                     nolanjdc
67cc8d7973e1   nolanhzy/nvjdccaptcha:arm   "python3 server.py"      31 minutes ago   Up 31 minutes                                                                                        nvjdccaptcha

5.页面访问测试

我加了 nginx 反代

登录成功后如下图:

 

注意:
1.文中二维码和链接可能带有邀请性质,请各位玩家自行抉择。
2.请勿通过链接填写qq号与密码、银行卡号与密码等个人隐私信息。
3.禁止纯拉人头,拉app注册等信息,发现必小黑屋。
4.同一种信息仅发一次,多发会被删除。
5.文章关联方不想展示也可以微信站长“socutesheep”删除。
本文由 @进击的根号四 发布。如若转载,请注明出处: 科技玩家 » ARM下docker运行nolanjdc

给TA买糖
共{{data.count}}人
人已买糖
教程玩家投稿

Linux下设置服务器定时重启任务图文教程

2021-12-27 22:27:08

教程玩家投稿

云服务器设置安全组,添加IP段防火墙规则防止端口被扫

2021-12-27 23:07:46

39 条回复 A文章作者 M管理员
贴心提醒
请认真对待作者付出,勿发表无意义言论,触发过滤规则的评论将无法提交,包含敏感词的评论会自动变成待审核状态哦。
  1. DragonTang

    赛高!👍

  2. MJYES

    MJ感谢大佬分享, 支持支持

  3. Carol

    学习了!!!来顶一下👍

  4. MJYES

    银河有迹可循,2021年的不快乐要后会无期。

  5. FZY

    大佬,可以分享一下你的镜像文件吗,我也是arm平台的,因为自带了chromium,所以配置Nolan时想直接指定,按网上其他教程都是amd的

    • 进击的根号四

      直接build一下不就有了么 新版 ark 也能用,最后的 WORKDIR 改成ark 就可以

  6. 两个空格

    谢谢分享,学习了

  7. 灰灰

    感谢分享

  8. Dreameru

    arm版本是不是不支持armV7?

个人中心
购物车
优惠劵
今日签到
有新私信 私信列表
搜索