使用alpine的docker镜像下 dind 的方式安装dotnet core 的一个非dockerfile的方法

时间:2022-09-11 20:51:42

1. 下载dind的镜像

docker pull docker:dind

2. 执行该镜像

docker run -it --privileged --name some-docker -d docker:dind

3. 镜像内处理

安装一些必须要有的包

apk add --no-cache icu-libs

4. 下载 dotnet 的 tar包

https://www.microsoft.com/net/download/thank-you/dotnet-sdk-2.1.302-linux-x64-alpine-binaries

非常明确的下载地址为

https://download.microsoft.com/download/4/0/9/40920432-3302-47a8-b13c-bbc4848ad114/dotnet-sdk-2.1.302-linux-musl-x64.tar.gz

5. copy到运行 dind的宿主机

然后将压缩包 放进docker
docker cp dotnet-sdk-2.1.-linux-musl-x64.tar.gz some-docker:/

6. 使用最简单的方法安装dotnet

将解压缩的所有文件 放到 /usr/bin 目录下

使用alpine的docker镜像下 dind 的方式安装dotnet core 的一个非dockerfile的方法

mkdir dotnetcore
mv dotnet-sdk-2.1.-linux-musl-x64.tar.gz dotnetcore
cd dotnetcore
tar -zxf dotnet-sdk-2.1.-linux-musl-x64.tar.gz
cp * -r /usr/bin rm * # 删除垃圾文件.根据情况 处理

7. docker commit 生成新镜像

docker commit some-docker 10.24.101.99:/opensource/alpine_dind_dotnet:2.0

8. docker push 到私有的 harbor仓库

docker push 10.24.101.99:/opensource/alpine_dind_dotnet:2.0

9. 其他机器的测试

方法同前面

学习来源

https://asciinema.org/a/24707

会的太少  下次再学习下 如何写dockerfile