WSL2中安装docker 并开机启动
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了WSL2中安装docker 并开机启动相关的知识,希望对你有一定的参考价值。
参考技术A win10 安装 wsl2 的步骤可参考 :https://www.jianshu.com/p/8a25719c95de
依次执行以下几条命令
注意, 把 $USER换成你 安装wsl2时候取的 账号,
①
② 然后, 把以下内容添加到脚本中
③ 给脚本添加执行权限
1 如图, 我的登录名叫 ubuntu, 你把ubuntu改成你的登录名即可
2 NOPASSWD 冒号后面 ALL, 表示执行任何命令都不需要输密码 , 你也可以指定只有 /bin/sh /usr/local/sbin/start_docker.sh 这个命令不需要密码, 自己根据需求使用即可
点新建., 选择登录时, 所以用户
参数 :
把 只有计算机使用交流电.... 这个选项给去掉
这个时候就已经大功告成了, 保存好这个计划任务后, 就可以去 重启电脑试一下。
如何在高山容器中安装 Docker?
【中文标题】如何在高山容器中安装 Docker?【英文标题】:How can I install Docker inside an alpine container? 【发布时间】:2019-06-03 14:00:20 【问题描述】:如何在 alpine 容器中安装 Docker 并运行 docker 映像? 我可以安装,但无法启动 docker,并且在运行时出现“docker command not found error”。
【问题讨论】:
Is it ok to run docker from inside docker?的可能重复 几乎普遍不鼓励,技术上也很复杂,但理论上是可行的。最好的选择是使用更高级别的编排器,如 Docker Compose,并且根本不让容器尝试启动其他容器。如果您可以容忍您的容器对主机具有不受限制的 root 访问权限,您还可以让它们访问主机的 Docker 套接字。 【参考方案1】:用于在 alpine 中运行 docker-cli 的 Dockerfile
FROM alpine:3.10
RUN apk add --update docker openrc
RUN rc-update add docker boot
构建 docker 镜像
docker build -t docker-alpine .
运行容器(host 和 alipne 容器将共享同一个 docker 引擎)
docker run -it -v "/var/run/docker.sock:/var/run/docker.sock:rw" docker-alpine:latest /bin/sh
【讨论】:
有什么方法可以将安装卷部分移动到 Dockerfile。所以只要我开始一个交互式终端会话,docker就可以正常工作了吗?? @mygitrepo 不,绑定挂载是运行时选项。您唯一的机会是在 docker 守护程序上启用 TCP(或对 unix 套接字进行反向代理)并使用-H
标志(您可以使用 ENTRYPOINT
设置)【参考方案2】:
您只需要在基于 Alpine 的镜像中安装 Docker CLI 并运行容器挂载docker.sock
。它允许使用主机的 Docker 引擎运行同级 Docker 容器。它被称为 Docker-out-of-Docker,被认为是在容器内运行单独的 Docker 引擎(又名 Docker-in-Docker)的一个很好的替代方案。
Dockerfile
FROM alpine:3.11
RUN apk update && apk add --no-cache docker-cli
构建镜像:
docker build -t alpine-docker .
运行容器挂载docker.sock
(-v /var/run/docker.sock:/var/run/docker.sock
):
docker run --rm -it -v /var/run/docker.sock:/var/run/docker.sock alpine-docker docker ps
上面的命令应该在基于 Alpine 的容器中成功运行 docker ps
。
【讨论】:
有什么方法可以将安装卷部分移动到 Dockerfile。所以只要我开始一个交互式终端会话,docker就可以正常工作了吗?? @mygitrepo - 你可以使用 docker-compose 来做类似的事情。您可以在那里定义挂载,然后使用docker-compose run --rm alpine-docker-svc
docker-compose 文件看起来像(抱歉,SO cmets 中没有换行符):` version: '3' services: alpine-docker-svc: build: 。卷: - /var/run/docker.sock:/var/run/docker.sock `以上是关于WSL2中安装docker 并开机启动的主要内容,如果未能解决你的问题,请参考以下文章