一、Windows安装配置docker
当前Docker版本安装条件:
1.Windows10;
2.Hyper-V已经启用
3.相关软件对应下载官网:
文章目录
1.1 检查/开启Hyper-V
-
win+R,输入control;
-
程序
-
程序和功能==>启用或关闭Windows功能
-
选择“Hyper-V”,然后单击“确定”。
5.重启计算机
1.1.1找不到Hyper-V选项?
有些计算机是默认隐藏Hyper-v选项的,需要手动去开启
-
在桌面新建txt文件,输入以下脚本
pushd "%~dp0" dir /b %SystemRoot%\servicing\Packages\*Hyper-V*.mum >hyper-v.txt for /f %%i in ('findstr /i . hyper-v.txt 2^>nul') do dism /online /norestart /add-package:"%SystemRoot%\servicing\Packages\%%i" del hyper-v.txt Dism /online /enable-feature /featurename:Microsoft-Hyper-V-All /LimitAccess /ALL
-
另存为Hyper-v.bat格式,这里原来的txt文件先别删除
-
以管理员身份运行.bat文件
-
根据提示重启电脑就可以去1.1步勾选Hyper-v选项了
1.2 下载并安装Windows版Docker:Docker for Windows
-
去[官网](Install Docker Desktop on Windows | Docker Documentation)下载并根据提示一路安装即可;
-
安装后看到通知栏上会出现一个小鲸鱼的图标表示Docker正在运行
-
如果启动中遇到因 WSL 2 导致的错误,请安装 WSL 2。
WSL2的官方安装教程:https://docs.microsoft.com/zh-cn/windows/wsl/install-win10
创建免费的 Docker 帐户(如果还没有该帐户)
-
至此Windows版本Docker已经安装完毕
1.3 Docker镜像加速
在Docker for windows软件中:settings==>Docker Engine输入以下代码,会进行相关镜像加速
{
"builder": {
"gc": {
"defaultKeepStorage": "20GB",
"enabled": true
}
},
"debug": false,
"experimental": false,
"features": {
"buildkit": true
},
"insecure-registries": [],
"registry-mirrors": [
"https://registry.docker-cn.com",
"http://hub-mirror.c.163.com",
"https://docker.mirrors.ustc.edu.cn"
]
}
2. Docker 配置conda/anaconda环境
-
搜索镜像
docker search anaconda
-
pull镜像
选择一个最高版本的
docker pull continuumio/anaconda3
-
运行镜像image–>容器
docker run -i -t -p 12345:8888 continuumio/anaconda3 /bin/bash
-i: 是 以交互模式运行容器,通常与 -t 同时使用;
-t: 为容器重新分配一个伪输入终端,通常与 -i 同时使用;
-p: 指定端口映射,格式为:主机(宿主)端口:容器端口
-
此时进入的是conda的原始环境base,一般我们会新建一个自己的虚拟环境,这里就是conda的基本命令了
-
新建虚拟环境
docker exec -it 858d19e80a8f bash
-
激活虚拟环境
conda activate python-3.8
-
查看当前conda环境中所有Python虚拟环境
conda info -e
-
-
进入你想进入的虚拟环境中,在容器中启动jupyter notebook
jupyter notebook --port 8888 --ip 0.0.0.0 --allow-root
-
启动jupyter后,复制下面的其中一个网址用浏览器打开即可
注意:将8888端口范围你自己映射的端口,比如我这里是12345
-
如果没有jupyter,用以下命令安装
docker pull jupyterhub/jupyterhub
3. FIANL
tips:在Docker或者Linux或者任何powershell这种命令行交互的形式,一定注意看左侧的目录栏,防止命令运用到了错误的区域。