分类: docker

  • 群晖(Synology)NAS DS418 Play升级到DSM7.2后应用商店无法采用SPK安装Docker的解决方案 群晖NAS命令行(CMD)安装Docker

    群晖(Synology)NAS DS418 Play升级到DSM7.2后应用商店无法采用SPK安装Docker的解决方案 群晖NAS命令行(CMD)安装Docker

    几乎找遍了各个网站,也快有好几年没在群晖NAS当中运行Docker容器了,也就是从升级了DSM到7的版本后。

    群晖官网是明确表示DS418 Play型号是不支持docker容器,但是以前能够通过其他版本的SPK文件进行安装,例如DS918+的安装文件Docker-x64-20.10.3-1308.spk.

    而现在,不管下载那个版本的spk,又或者使用更改链接的大法,再也搞不定Docker的安装了。

    当然,国内外也有不少网友通过应用市场上传spk这种方法就安装成功了,但是技术奇客ITGeeker.net就没那么幸运,好像很多人也没那么幸运,如果你想尝试一下,就去群晖的官网下载Docker的spk文件安装试试看吧。

    https://archive.synology.cn/download/Os/DSM

    对了,Docker在群晖DSM中的名称已经更改为:Container Manager

    by 技术奇客ITGeeker.net

    原本想着随着群晖的不断升级,以后或许还能在DS418 play当中使用docker的,但是没想到群晖NAS的价格越卖越贵,还真就不管以前用户的死活了!

    所以今天就分享一下如何用命令行安装docker,让您的群晖DS418play重新用上Docker容器。也幸亏群晖还没封死这条路,毕竟有些简单的docker应用,用NAS来运行的话又稳定数据又安全。

    至于可以运行哪些docker可以参看技术奇客ITGeeker.net的这篇文章:

    群晖DS418play如何使用命令行安装Docker – Container Manager

    1. 下载docker的源文件

    首先,从Docker官网下载一个最新版本吧: https://download.docker.com/linux/static/stable/x86_64

    # 比如下载当前最新版,或者下载后上传到NAS
    wget https://download.docker.com/linux/static/stable/x86_64/docker-26.1.3.tgz

    2. 给你的群晖添加一个docker的用户

    这一步是必须的,如果没添加成功则后面运行会出错

    sudo synogroup --add docker $USER

    3. 解压缩前面下载的docker源码安装包

    tar xzvf docker-26.1.3.tgz
    
    # 然后将文件复制到对应目录
    sudo cp docker/* /usr/bin/

    4. 创建守护程序Daemon

    echo '{
      "storage-driver": "vfs",
      "iptables": false,
      "bridge": "none"
    }' > /etc/docker/daemon.json

    5. 运行Docker

    sudo dockerd &

    解决群晖NAS运行源码安装的Docker空间不足的问题

    no space left on device

    docker info -f '{{ .DockerRootDir }}'

    通过此命令,可以发现直接运行的Docker默认目录的空间很小,大约1-2G左右,随便拉个稍大点的image就会空间不足,所以我们要创建并使用一个自定义的存放Docker image的目录。

    mkdir -p /volume1/homes/image_docker
    
    # 然后vi /etc/docker/daemon.json添加
    "data-root": "/volume1/homes/tmp_docker"
    
    # 重启docker
    ps ax | grep docker
    kill -9 id
    sudo dockerd &
    
    # 再确认一遍路径是否已改变:
    docker info -f '{{ .DockerRootDir}}'

    DSM安装docker-compose

    DOCKER_CONFIG=${DOCKER_CONFIG:-$HOME/.docker}
    mkdir -p $DOCKER_CONFIG/cli-plugins
    curl -SL https://github.com/docker/compose/releases/download/v2.17.2/docker-compose-linux-x86_64 -o $DOCKER_CONFIG/cli-plugins/docker-compose
    chmod +x $DOCKER_CONFIG/cli-plugins/docker-compose
    
    # 检查一下版本
    docker compose version

    DSM运行Portainer测试一下吧

    sudo docker run -d --network=host portainer/portainer:linux-amd64
    
    # 检查一下容器是否已运行 
    docker ps

    http://NAS_IP:9000

    登录Portainer就可以用界面来管理Docker的容器了,适合不喜欢用CMD的小伙伴们

    One More Thing

    由于 Synology 的限制,所有容器都需要使用–network=host(或 compose 中的 network_mode: host),所有内容都将可直接从主机访问。没有端口映射。

    by 技术奇客ITGeeker.net
  • Esxi 8使用Photon OS OVA一分钟快速搭建Docker容器运行环境 从此一个虚拟机只运行一个Docker实例

    Esxi 8使用Photon OS OVA一分钟快速搭建Docker容器运行环境 从此一个虚拟机只运行一个Docker实例

    如果你拥有HomeLAB家用服务器之后,相信大家都会有一种想法:什么都要自建一个,音乐,网盘,下载服务,电子书,影视等等。不整个20-30个虚拟机心难安, 也对不住20%的CPU的使用率。

    部分自建服务

    1. iKuai
    2. OpenWRT
    3. CalibreWeb
    4. Jellyfin
    5. Emby
    6. tinyMediaManager
    7. transmission
    8. nextcloud
    9. navidrome
    10. gitlab
    11. Pi-hole
    12. HomeAssistant
    13. PhotoPrism
    14. volumio
    15. NGinx
    16. Postgresql
    17. mariadb
    18. Odoo
    19. qBittorrent
    20. rsync
    21. homepage
    22. glance
    23. ……

    而使用Docker容易部署是一个非常便捷的选择。选择一个虚拟机运行一个Docker实例还是多个,相信每个人都有不同的选择,也各有优劣。

    如果你已经使用Esxi平台,而且Docker容器部署足够简单快速,并且是经过Esxi优化的环境,那么选择一个虚拟机只运行一个Docker,或者只把紧密相关联的容器运行在一个虚拟机上,可能会给你的管理带来更大的灵活和便利。

    部分优点

    1. 资源分配(内存,CPU, 硬盘空间)可以更有针对性
    2. IP地址、网关和DNS可随意自定义
    3. 快照操作不再影响其他Docker容器
    4. 备份与恢复独立隔离,更加清晰
    5. 有效避免端口冲突和恐慌

    要获得这个优势,能便利和快速创建虚拟机是一个先决条件

    by 技术奇客ITGeeker.net

    在使用Photon OS之前,一直使用Ubuntu mini来创建虚拟机,然后安装Docker,再部署容器,过程也不复杂,但还是需要不少配置的。如果你使用了Photon OVA模式来创建Esxi虚拟机之后,你会发现原来过程可以如此简单。

    什么是Photon OS

    Project Photon OS™是开源的,最小的Linux容器主机,Photon OS是一个免费的开源Linux操作系统,A Linux Container-Optimized Operating System,针对云原生应用程序,Sphere和云计算平台(例如Amazon Elastic Compute和Google Compute Engine)和VMware基础架构进行了优化。

    针对VMwarevSphere®进行了优化:当Photon OS在vSphere上运行时,Linux内核已针对性能进行了调整。
    对容器的支持: Photon OS包括Docker守护程序,并与容器编排框架(例如Mesos和Kubernetes)一起使用。

    在Esxi的虚拟机上运行Docker可能会让有些人担心性能问题,毕竟是在虚拟机上。从Photon OS介绍来看,它是对VMwareSphere,包括Esxi做过优化的,应该是Esxi上运行Docker的最优系统选择之一吧。具体哪些优化未做深究,暂且相信VMware不会坑自己的系统吧(Photon OS是VMware自己推出的)

    Photon OS esxi虚拟机创建过程

    如果选择OVA with virtual hardware v15 (Supports both BIOS and UEFI boot, default is UEFI)版本,只有308M的体积。可在其官方下载:

    https://github.com/vmware/photon/wiki/Downloading-Photon-OS

    再点几下“下一页”,即会进入Photon OS的启动界面

    默认用户名root,密码:changeme 登录后再次输入changeme, 再输入新设的密码,虚拟机就创建成功。

    找个软件SSH登录虚拟机,运行

    systemctl start docker
    systemctl enable docker
    # 到这里就可以使用Docker了,测试一下
    docker run hello-world

    如果要使用docker-compose

    tdnf install docker-compose -y
    # 或者
    yum install docker-compose -y

    就这么简便。

    相关优化

    更新系统

    tdnf update -y

    自定义IP地址等

    cat > /etc/systemd/network/99-dhcp-en.network << "EOF"
    [Match]
    Name=e*
    
    [Network]
    DHCP=no
    IPv6AcceptRA=no
    Address=188.188.88.8/24
    Gateway=188.188.88.1
    DNS=8.8.8.8
    
    [DHCPv4]
    SendRelease=no
    EOF
    
    reboot一下

    更改主机名称

    hostnamectl set-hostname YourName
奇客罗方公众号 奇客罗方小程序 奇客罗方客服 ITGeeker Telegram

网站由ITGeeker技术奇客开发并管理;隶属于GeekerCloud奇客罗方智能科技
Site designed and developed by ITGeekerwhich is a sub-website of GeekerCloud
网站地图 | 沪ICP备2021031434号-4