Docker实操6——配置好的强化学习Dockerfile

本文详细介绍了如何在Ubuntu 18.04环境中配置自定义强化学习环境,涉及CUDA 10.0、PyTorch 1.10.1、Mujoco 2.1.0等库,包括Dockerfile的定制、apt源更换、jupyterlab设置和容器启动脚本。重点讲解了CUDA与cudatoolkit的关系,并提供了完整的Dockerfile示例和小坑解决方案。

环境概述

基本信息 具体版本
系统 Ubuntu 18.04 LTS
用户:密码 pamirl:qwerty
pytorch 1.10.1
python 3.8
mujoco 2.1.0
cuda 10.0
pytorch—cudatoolkit 10.2
强化环境库 dm_control, mujoco,pybullet
强化算法库 stable-baselines3
jupyter lab password, ip, remote_access等配置

可在dockerfile中修改对应的版本,但修改前须了解它们彼此的依赖关系,可阅读setup.py

  • 执行时的状态:1

操作: sh build_image.sh ; sh start_container.sh

可能大家会问一个问题:cuda和cudatoolkit有什么关系?

  1. 这里的cuda:10.0是系统层面的关于CUDA的完整工具包,包括Nvidia驱动、编译程序、工具包、IDE、调试器等一系列程序
  2. cudatoolkit是为了使用pytorch框架而“事先被编译好的”动态链接库
  3. 因此如果只为了使用pytorch,只需关心cudatoolkit就好了(如果要写pytorch以外的cuda程序,就需要关心cuda完整工具包的版本)

一、文件内容

1.1 sh文件

# build_image.sh
## 使用当前路径.下的Dockerfile,创建名为stable_rl:launch的镜像
docker build -t stable_rl:launch .
# start_container.sh
## mount_dir:挂载主机上的mount_dir路径到容器内的/home/pamirl/rl_dev
## 利用image_name创建容器
jupyter_port=8888
ssh_port=8889
container_nick_name="stable_rl"
image_name="stable_rl:launch"
mount_dir="/home/pami/rl_dev"

nvidia-docker run -itd -p ${jupyter_port}:8888 -p ${ssh_port}:22 -u pamirl -v ${mount_dir}:/home/pamirl/rl_dev --name ${container_nick_name} ${image_name} bash

自行修改端口、名字、挂载路径、容器内的用户名等

1.2 换源的txt文件

# change_apt.txt
deb https://mirrors.ustc.edu.cn/ubuntu/ bionic main restricted universe multiverse
deb-src https://mirrors.ustc.edu.cn/ubuntu/ bionic main restricted universe multiverse
deb https://mirrors.ustc.edu.cn/ubuntu/ bionic-updates main restricted universe multiverse
deb-src https://mirrors.ustc.edu.cn/ubuntu/ bionic-updates main restricted universe multiverse
deb https://mirrors.ustc.edu.cn/ubuntu/ bionic-backports main restricted universe multiverse
deb-src https://mirrors.ustc.edu.cn/ubuntu/ bionic-backports main restricted universe multiverse
deb https://mirrors.ustc.edu.cn/ubuntu/ bionic-security main restricted universe multiverse
deb-src https://mirrors.ustc.edu.cn/ubuntu/ bionic-security main restricted universe multiverse
deb https://mirrors.ustc.edu.cn/ubuntu/ bionic-proposed main restricted universe multiverse
deb-src https://mirrors.ustc.edu.cn/ubuntu/ bionic-proposed main restricted universe multiverse

deb http://mirrors.aliyun.com/ubuntu/ xenial main
deb-src http://mirrors.aliyun.com/ubuntu/ xenial main
deb http://mirrors.aliyun.com/ubuntu/ xenial-updates main
deb-src http://mirrors.aliyun.com/ubuntu/ xenial-updates main
deb http://mirrors.aliyun.com/ubuntu/ xenial universe
deb-src http://mirrors.aliyun.com/ubuntu/ xenial universe
deb http://mirrors.aliyun.com/ubuntu
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值