docker run 和 docker-compose 配置挂载 Volume 并运行 nginx
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了docker run 和 docker-compose 配置挂载 Volume 并运行 nginx相关的知识,希望对你有一定的参考价值。
参考技术A 1.先在宿主机创建挂载目录:mkdir -p /data/nginx/conf,conf.d,html,logs2.然后把文件 nginx.conf 文件放到 /data/nginx/conf/
3.把子配置文件 default.conf 放到 /data/nginx/conf.d/
4.弄一个 index.html 放到 /data/nginx/html/
5.nginx 日志会在运行后存到 /data/nginx/logs/ 目录
6.1 然后 docker run 直接运行 nginx:
6.2 另外如果用 docker-compose 或 swarm 起服务,docker-compose.yml 文件如下:
docker-compose up -d 启动服务
修改 nginx 配置文件后重新创建容器:docker-compose up -d --force-recreate
广告: 油囊
ubuntu18.04在线安装dockernvidia-docker2与docker-compos
说明
由于项目测试需要,须安装如下版本的docker组建:
Docker:18.09.6
nvidia-docker2:18.09.6
部署 Docker
主要步骤如下:
(1)安装基础包
apt-get install -y apt-transport-https ca-certificates curl software-properties-common
(2)添加 apt-key
curl -fsSL http://mirrors.aliyun.com/docker-ce/linux/ubuntu/gpg | sudo apt-key add
(3)添加阿里云仓库
add-apt-repository "deb [arch=amd64] http://mirrors.aliyun.com/docker-ce/linux/ubuntu $(lsb_release -cs) stable"
(4)查看当前库对应的 docker 可用的版本
apt-cache madison docker-ce
(5)安装 Docker:18.09.6
apt-get install -y docker-ce=5:18.09.6~3-0~ubuntu-bionic docker-ce-cli=5:18.09.6~3-0~ubuntu-bionic
(6)查看 docker 版本
docker -v
安装 nvidia-docker(有nvidia-docker2才支持cuda10)
主要步骤如下:
(1)添加 apt-key
curl -L https://nvidia.github.io/nvidia-docker/gpgkey | sudo apt-key add - &&
distribution=$(. /etc/os-release;echo $ID$VERSION_ID)
(2)添加阿里云仓库
curl -s -L https://nvidia.github.io/nvidia-docker/$distribution/nvidia-docker.list | sudo tee /etc/apt/sources.list.d/nvidia-docker.list
(3)更新库
apt-get update
(4)查看当前库对应的 nvidia-docker2 可用的版本
apt-cache madison nvidia-docker2
(5)安装 nvidia-docker2
apt-get install -y nvidia-docker2 && pkill -SIGHUP dockerd
(6)查看 nvidia-docker 版本
nvidia-docker --version
安装 docker-compose
nvidia-docker2不支持nvidia-docker-compose
,目前只能用docker-compose
取代,通过配置daemon.json:default-runtime=nvidia
主要步骤如下:
(1)下载 docker-compose==1.24.0
curl -L "https://github.com/docker/compose/releases/download/1.24.0/docker-compose-$(uname -s)-$(uname -m)" -o /usr/local/bin/docker-compose
(2)授权
chmod +x /usr/local/bin/docker-compose
(3)查看 docker-compose 版本
docker-compose -version
(4)修改或添加 daemon.json 文件
确认下/usr/bin/nvidia-container-runtime是不是确定存在,存在的话,
将/etc/docker/daemon.json修改为:
{
"default-runtime": "nvidia",
"runtimes": {
"nvidia": {
"path": "/usr/bin/nvidia-container-runtime",
"runtimeArgs": []
}
}
}
(5)重启 docker 服务
systemctl daemon-reload
systemctl restart docker
扩展
删除 docker 包
主要步骤如下:
#使用dpkg查询已安装包,针对性删除
#查询相关软件包
# dpkg -l | grep docker
ii docker-ce 5:18.09.6~3-0~ubuntu-bionic amd64 Docker: the open-source application container engine
ii docker-ce-cli 5:18.09.6~3-0~ubuntu-bionic amd64 Docker CLI: the open-source application container engine
ii nvidia-docker2 2.2.2-1 all nvidia-docker CLI wrapper
#删除docker
apt remove --purge docker-ce docker-ce-cli nvidia-docker2
说明:关于apt-get remove 与 apt-get purge区别,可见这篇文章~
参考文档
ubuntu16.04安装docker、nvidia-docker2、docker-compose、nvidia-driver
以上是关于docker run 和 docker-compose 配置挂载 Volume 并运行 nginx的主要内容,如果未能解决你的问题,请参考以下文章