Docker 镜像
先决条件
系统要求
单节点SKIL安装的最低要求是:
- 带AVX指令的四核处理器
- 16 GB 内存
- 最小1Gbps网络连接
- 50GB 硬盘空间
以下规格建议用于生产环境:
- 带AVX2指令的八核或更好的处理器,
- 64 GB 内存
- 最小1Gbps网络连接
- 500GB+ 硬盘空间
- 还建议将Docker内存设置为至少8GB。看一下这里了解更多细节。
Docker
要安装Docker,请访问此链接并选择你的平台。
增加Docker虚拟机的主机内存
如果不使用Linux,则必须增加主机虚拟机内存。修改主机虚拟机的方法取决于环境。
1. 传统Docker工具箱(Mac OS和Windows)
使用docker-machine和vboxmanage(不需要删除vm)
通过按开始按钮并键入cmd.exe或在Mac上打开terminal.app打开命令行。
docker-machine stop
VBoxManage modifyvm default --cpus 2
VBoxManage modifyvm default --memory 8192
docker-machine start
VBoxManage showvminfo default
docker-machine ssh default free

仅使用docker-machine(需要删除VM)
docker-machine rm default
docker-machine create -d virtualbox --virtualbox-memory=8192 --virtualbox-cpu-count=2 --virtualbox-disk-size=50000 default

2. Docker (Windows)
转到系统托盘,右键单击Docker图标。然后导航到设置>高级。参考下图:


右键单击系统托盘中的Docker图标。然后,导航到“设置”。


修改计算资源。
3. Docker (Mac OS)
转到菜单栏,右键单击Docker图标。然后导航到首选项>高级。参考下图:


Docker首选项选项。


更改“高级”选项卡中的计算资源。
4. Docker (Linux)
如果你在Linux上运行本机Docker实例(没有任何虚拟机),那么就不必执行增加虚拟机内存的步骤,因为Docker运行时会使用整台机器。
拉取SKIL的Docker镜像
为了从仓库拉取SKIL的Docker镜像,使用如下命令:
docker pull skymind/skil

这需要花费时间和磁盘空间
由于SKIL包含许多框架,Docker Pull可能需要90分钟以上,这取决于你的互联网连接。如果暂停,请检查磁盘空间。我们建议至少有15GB的可用空间。
运行SKIL服务器
要运行临时SKIL服务器,请运行以下命令:
docker run --rm -it -p 9008:9008 -p 8080:8080 skymind/skil

运行期间错误
如果在执行上述命令时出现错误,请确保
docker daemon正在运行。首先确认你可以成功运行Docker PS。如果不从“开始”菜单或Mac上的docker.app启动Docker,或使用docker-machine start default并按照命令docker-machine env default
你可能需要等待5分钟
SKIL将在第一次运行时执行一些安装步骤,可能需要10分钟才能准备好使用。
在本地Linux机器上,或者在Mac或Windows上使用Docker-CE时,则可以打开浏览器窗口通过http://localhost:9008访问SKIL UI (或者如果使用Docker工具箱时通过http://192.168.99.100:9008访问,你可以使用docker-machine ip
命令查找此主机地址)。
确保Docker虚拟机至少有8GB的RAM。(你可以在虚拟机应用程序中进行更改。)
首次设置
对于第一次启动,需要执行以下两个初始化步骤:
1. 获得SKIL许可证
对于第一次使用的用户,SKIL将要求你进行许可验证。要做到这一点,你需要访问https://skymind.ai/activate为社区版创建许可证。填写你的详细信息,并在提供的电子邮件地址收到你的许可证详细信息后,粘贴到SKIL和导航到下一步。


2. 设置一个默认的密码
设置许可证后,可以为管理员用户设置密码,以便将来登录到SKIL服务器。


如果你已经有一个许可证文件,并且希望用它来持久化数据,请参见持久化数据
持久化数据
要在使用SKIL时保存笔记本和模型服务器,需要使用Docker的数据管理功能。有关更多信息,请参阅管理容器中的数据。
保存笔记本和模型服务器配置的最简单方法是为SKIL使用持久数据卷。你可以使用以下命令执行此操作:
docker volume create --name skil-data
docker volume create --name skil-conf
docker volume create --name skil-root
docker run -it --rm -v skil-root:/opt/skil -v skil-data:/var/skil -v skil-conf:/etc/skil -p 9008:9008 -p 8080:8080 -d skymind/skil

如果你已经有了许可证文件,可以按以下方式启动容器:
docker volume create --name skil-data
docker volume create --name skil-root
docker run -it --rm -v skil-root:/opt/skil -v skil-data:/var/skil -v /path/to/license:/etc/skil/license.txt -p 9008:9008 -p 8080:8080 -d skymind/skil

然后你可以像这样停止SKIL:
docker stop <container_name> # 你可以通过"docker ps"找到container_name

然后用(取决于你的配置)重新启动它:
docker run -it --rm -v skil-root:/opt/skil -v skil-data:/var/skil -v skil-conf:/etc/skil -p 9008:9008 -p 8080:8080 -d skymind/skil
# 或
docker run -it --rm -v skil-root:/opt/skil -v skil-data:/var/skil -v /path/to/license:/etc/skil/license.txt -p 9008:9008 -p 8080:8080 -d skymind/skil

当使用持久化数据时,它执行的SKIL安装步骤将被缓存,并且它将在2-5分钟内准备好使用。当SKIL启动时,你有时会看到以下屏幕:


网友评论