Docker使用教程——小白福音

HTNAS 发布于 6 小时前 8 次阅读 无~


新手在使用docker的时候一定会有这样那样的疑问,大佬们在写教程的时候只会教人怎么做,却很少有人去解释各种概念,这些概念在大佬们眼中可能只是一些常识,但是对小白来说却需要花很多时间去理解。

本文已飞牛docker为例,讲解一下docker的常规使用方法,科普一下在使用过程当中的一些概念,让小白们少走一些弯路。

使用方法

常见的有两种使用方法 ,第1种是直接用可视化面板安装Docker容器,第2种是用docker compose。本人推荐使用第2种,第2种更方便一些。下面我们展开来讲这两种方法。

1.可视化面板直接安装

首先,通过可视化面板安装容器,你得选好服务的储存位置。

image-20260612203809809

然后,去镜像仓库搜索下载你需要安装的容器的镜像。

image-20260612204409154

镜像下载完毕之后,到本地镜像开始建立容器进行各种设置,这里进入手动安装容器的关键。

image-20260612205059189
image-20260612205343215

下一步后进入到各种设置,这里来到了小白最不理解的地方,左右两边到底应该改哪一个。

这里修改的所有设置,都是左边对应你本地访问的地方,也就是本地持久化设置;右边指的是容器设置,容器都是独立个体,所有设置都已经固定好了,所以右侧不能更改。以上面图片中端口为例,左边改成你需要使用的端口,防止端口占用,右侧不变。

image-20260612210044998

储存路径指的是将容器内部的文件夹映射到你本地文件夹,可以通过文件夹图标选择,也可以直接到文件夹属性里复制路径粘贴过来。

image-20260612210227549
image-20260612210337288

环境变量一般根据容器文档自行添加,不同容器有不同的 变量要求,需要你去容器官方文档查看;功能一般默认就好,不放心就用最高权限执行。

image-20260612210514045

docker的网络一般分为bridge桥接和host,bridge就是指容器在单独的子网下,需要你把端口映射出来访问;host就是直接使用设备本地网络,也就是说使用host网络时不需要进行上方的端口设置,但是使用host网络非常容易造成端口冲突,所以一般使用桥接网络。

设置好后就可以确认信息创建容器了。

image-20260612210940317

然后到容器界面点击运行,然后点链接图标就能访问了。

image-20260612211057226

这就是第一种可视化安装方法,一步步操作即可,这里说一下容器运行环境的问题,好多容器需要配置相应的环境参数,直接百度该应用的官方网站一般都有文档,也可以到镜像仓库界面点击跳转链接访问docker仓库,比较讲究的作者一般都有文档。

image-20260612211354103
image-20260612211457116

当然,好多访问你需要有一个比较科学的环境,如果没有你可以看我之前的文章,

传送门:折腾的开端-从科学上网开始

2.compose安装

我比较推荐这种方法,先写好配置,然后一键运行就可以,还可以保存好yml文件方便以后一键恢复,下面我们就来学习一下操作过程和yml内容的含义。

image-20260612212038804

过程非常简单,到compose界面创建项目,填好名称,选好本地安装位置,直接粘贴好compose代码确认即可,然后点击构建,容器就自动下载运行了。重点是compose代码的含义。下面以emby的官方代码为例:

version: "2.3"
services:
  emby:
    image: emby/embyserver #这个是镜像名称
    container_name: embyserver  #这个是容器名称,你可以改成自己喜欢的,但是不能是中文
    runtime: nvidia # Expose NVIDIA GPUs
    network_mode: host # Enable DLNA and Wake-on-Lan   #这个是网络,我们一般改成bridge桥接
    environment:    #这个是环境变量,你可以对应着可视化操作去看在可视化的哪一部分
      - UID=1000 # The UID to run emby as (default: 2)
      - GID=100 # The GID to run emby as (default 2)
      - GIDLIST=100 # A comma-separated list of additional GIDs to run emby as (default: 2)
    volumes:                      #这个部分对应着可视化的文件映射部分
      - /path/to/programdata:/config # Configuration directory   #这个映射的是设置文件夹
      - /path/to/tvshows:/mnt/share1 # Media directory      #下边这俩映射的是媒体文件夹,:左边更改成你本地路径
      - /path/to/movies:/mnt/share2 # Media directory
    ports:   #这一部分映射的是端口,同样:左边改成你需要的端口,如果选的是host网络这部分就不生效,你只能使用8096和8920
      - 8096:8096 # HTTP port     
      - 8920:8920 # HTTPS port
    devices:      #这部分是映射硬解驱动,这就是emby不同于其他容器的部分,应为别的可能用不到硬解功能
      - /dev/dri:/dev/dri # VAAPI/NVDEC/NVENC render nodes
      - /dev/vchiq:/dev/vchiq # MMAL/OMX on Raspberry Pi
    restart: on-failure

了解可视化操作后,再看conpose代码的注释部分,一一和可视化操作对应,是不是就非常容易理解了?那么教程就到这里,以后我会直接以分享一些好玩的docker应用给大家。