1.docker version
查看docker版本
2.docker search ubuntu[centos]
搜索Docker官方镜像,只提供linux的
3.docker pull search ubuntu:latest
拉取官方最新版的Ubuntu
4.docker images
查看本地镜像仓库
5.将本地的文件复制到docker容器中
docker cp 源文件 容器id:/容器目的路径
6.创建一个容器的步骤
1)查找基础镜像
查看本地的镜像仓库:
docker images
查找网络镜像:
docker search ubuntu[centos]
2)创建Dockerfile文件
FROM nvidia/cuda:10.1-cudnn7-runtime-ubuntu18.04.py36 # 指明构建的新镜像是来自于哪个基础镜
LABEL MAINTAINER="fanxiaole" # 镜像维护者
RUN apt-get install -y libsm6 libxrender1 libxext-dev # 安装Ubuntu系统的基础依赖
ENV LANG C.UTF-8 # 设置语言和编码格式
ENV JAVA_HOME /usr/local/java/jdk-11.0.6/ # 设置容器内环境变量
WORKDIR /app # 容器内创建一个根目录
COPY ./requirements.txt /app/requirements.txt # 拷贝文件或目录到镜像中
RUN pip3 install -r /app/requirements.txt -i https://mirrors.aliyun.com/pypi/simple/ # run构建镜像时运行的 Shell 命令
EXPOSE 80 443 8080/tcp # 暴露容器运行时的监听端口给外部
COPY ./ /app/dutystatus/
ENTRYPOINT python3 /app/dutystatus/run.py 或 bash # 运行主程序或bash
3)利用Dockerfile创建镜像
创建buildDocker.sh文件,-f指定Dockerfile文件,-t指定镜像名,不要忘记最后的 .
docker build -f ./Dockerfile -t fanxiaole1:x86_64-1.0 .
运行buildDocker.sh文件
bash buildDocker.sh
4)创建容器
docker run -ti --name=student-yan1-fanxiaole \ # 指定容器名
--runtime=nvidia \
-e NVIDIA_VISIBLE_DEVICES=all \
-v "/home/student/yan1-fanxiaole:/app/" \
-p 6051-6055:6051-6055 \ # 指定宿主机端口:容器暴露的端口的映射
student-cuda10.1:0715 # 指定镜像名
5)进入容器
docker exec -it student-yan1-fanxiaole bash
7.容器内的虚拟环境
创建一个容器内的虚拟环境:
python –m venv python_project
激活环境:
source ~/python_project/bin/activate
退出环境:
deactivate