# 在此处添加PUB_HOSTED_URL 和 FLUTTER_STORAGE_BASE_URL
ENV PUB_HOSTED_URL=“https://pub.flutter-io.cn”
ENV FLUTTER_STORAGE_BASE_URL=“https://storage.flutter-io.cn”WORKDIR /app
Copy Dependencies
Install Dependencies
Resolve app dependencies.
COPY pubspec.* ./
RUN dart pub getCopy app source code and AOT compile it.
COPY . .
Ensure packages are still up-to-date if anything has changed
RUN dart pub get --offline
RUN dart compile exe bin/server.dart -o bin/serverBuild minimal serving image from AOT-compiled
/server
and required systemlibraries and configuration files stored in
/runtime/
from the build stage.FROM scratch
COPY --from=build /runtime/ /
COPY --from=build /app/bin/server /app/bin/Start server.
CMD [“/app/bin/server”]
部署服务器
然后把 build/ 放到服务器
需要先查看Docker 有没有 dart 环境,如果没有就下载一下
docker pull dart:latest
在服务器下进入文件夹执行一下指令,构建项目(Custom Dockerfile)
docker build . -t dart-frog-app
如果没有修改Dockerfile文件,编译的时候会报错
[+] Building 49.2s (8/13) docker:default
=> [internal] load build definition from Dockerfile 0.0s
=> => transferring dockerfile: 912B 0.0s
=> [internal] load metadata for docker.io/library/dart:stable 21.9s
=> [internal] load .dockerignore 0.0s
=> => transferring context: 126B 0.0s
=> [build 1/7] FROM docker.io/library/dart:stable@sha256:7e0b4e5d3773c61b5d5b42908f48853fab04c33a080c6f73ee3a99b 0.0s
=> [internal] load build context 0.0s
=> => transferring context: 428B 0.0s
=> CACHED [build 2/7] WORKDIR /app 0.0s
=> CACHED [build 3/7] COPY pubspec.* ./ 0.0s
=> ERROR [build 4/7] RUN dart pub get 27.1s> [build 4/7] RUN dart pub get:
0.531 Resolving dependencies…
27.06 Got socket error trying to find package test at https://pub.dev.Dockerfile:15
13 | # Resolve app dependencies.
14 | COPY pubspec.* ./
15 | >>> RUN dart pub get
16 |
17 | # Copy app source code and AOT compile it.ERROR: failed to solve: process “/bin/sh -c dart pub get” did not complete successfully: exit code: 69
成功情况下
[+] Building 101.6s (14/14) FINISHED docker:default
=> [internal] load build definition from Dockerfile 0.0s
=> => transferring dockerfile: 916B 0.0s
=> [internal] load metadata for docker.io/library/dart:stable 88.6s
=> [internal] load .dockerignore 0.0s
=> => transferring context: 126B 0.0s
=> [build 1/7] FROM docker.io/library/dart:stable@sha256:7e0b4e5d3773c61b5d5b42908f48853fab04c33a080c6f73ee3a99b 0.0s
=> [internal] load build context 0.0s
=> => transferring context: 428B 0.0s
=> CACHED [build 2/7] WORKDIR /app 0.0s
=> CACHED [build 3/7] COPY pubspec.* ./ 0.0s
=> [build 4/7] RUN dart pub get 6.9s
=> [build 5/7] COPY . . 0.1s
=> [build 6/7] RUN dart pub get --offline 1.3s
=> [build 7/7] RUN dart compile exe bin/server.dart -o bin/server 3.9s
=> [stage-1 1/2] COPY --from=build /runtime/ / 0.1s
=> [stage-1 2/2] COPY --from=build /app/bin/server /app/bin/ 0.1s
=> exporting to image 0.1s
=> => exporting layers 0.1s
=> => writing image sha256:248f909c7afe366ebd0f045fb76eac2c491d840ffa22ce9609df3c56ac42125a 0.0s
=> => naming to docker.io/library/dart-frog-app 0.0sView build details: docker-desktop://dashboard/build/default/default/vr5kryu8vmt430i7hgx6vl9jw
What’s Next?
1. Sign in to your Docker account → docker login
2. View a summary of image vulnerabilities and recommendations → docker scout quickview
自我介绍一下,小编13年上海交大毕业,曾经在小公司待过,也去过华为、OPPO等大厂,18年进入阿里一直到现在。
深知大多数Linux运维工程师,想要提升技能,往往是自己摸索成长或者是报班学习,但对于培训机构动则几千的学费,着实压力不小。自己不成体系的自学效果低效又漫长,而且极易碰到天花板技术停滞不前!
因此收集整理了一份《2024年Linux运维全套学习资料》,初衷也很简单,就是希望能够帮助到想自学提升又不知道该从何学起的朋友,同时减轻大家的负担。
既有适合小白学习的零基础资料,也有适合3年以上经验的小伙伴深入学习提升的进阶课程,基本涵盖了95%以上Linux运维知识点,真正体系化!
由于文件比较大,这里只是将部分目录大纲截图出来,每个节点里面都包含大厂面经、学习笔记、源码讲义、实战项目、讲解视频,并且后续会持续更新
如果你觉得这些内容对你有帮助,可以添加VX:vip1024b (备注Linux运维获取)
由于文件比较大,这里只是将部分目录大纲截图出来,每个节点里面都包含大厂面经、学习笔记、源码讲义、实战项目、讲解视频,并且后续会持续更新
如果你觉得这些内容对你有帮助,可以添加VX:vip1024b (备注Linux运维获取)
[外链图片转存中…(img-16Kr9GAi-1712831129438)]