背景

最近折腾羊毛,也学习了linux知识,下面来几个实用的小技巧,可以帮助大家更愉快的玩耍

  • docker安装ubuntu
  • docker中的ubuntu安装ssh,远程ssh控制群晖
  • docker中的ubuntu安装内网穿透工具,远程折腾ubuntu(已放弃,docker我整不出systemd管理进程,反正就是暂时没解决,虚拟机/真机正常使用)
  • docker中的ubuntu配合crontab,定时运行”美团天天神券“ 脚本

下面开始折腾,欢迎大家一起交流(我是小白,错了大佬不要喷我)

首先整个ssh(docker-ubuntu不能使用,请跳过)

  • 自行下载喜欢的镜像(我下载的是ubuntu 20.4 lst版本),直接群晖搜索(docker hub)第一个就可以

  • 下载后进行安装,我个人把home目录做了挂载image-20211118093806420

  • 端口开放了 22——映射到群晖的2222端口 image-20211118093836292

  • 别的都默认安装

  • 运行后,切换到终端机界面,可以ls看一下目录image-20211118094008964

  • 安装ssh

    1
    2
    apt update
    pt install openssh-server

    安装过程中会让你选择地区,请自行选择,不会的看图image-20211118094355838image-20211118094407962完成后可以 ssh-v,虽然用法不对,但是可以方便的看出成功装了sshimage-20211118094941232

  • 现在就可以方便的通过外网访问群晖了,ssh访问image-20211118095117983不要问我这个有什么用处,当你用到了,就知道了(傻妞死掉,你没有内网电脑操作的时候可以用)

  • 到此ssh完成,你可以愉快的外网 ssh访问群晖

然后是内网穿透

  • 内网穿透的话推荐两个软件zerotiertailscale,谁好谁坏不好判断,反正说啥的都有,自己尝试下就知道了

  • 下面用tailscale做演示,因为我的环境,tailscale延迟更低,个人觉得也比较易用

  • 首先安装一个curl,下面会用到: apt install curl,问你y/n的话自己输入 y;惯例错误🙅检测方法image-20211118100823775

  • 然后装一个 sudo : apt install sudo ;image-20211118101155773执行sudo -i不报错即可

  • 还要装一个gnupg:防止报错(docker的版本精简的太多了),sudo apt-get install gnupg;问你y/n的话自己输入 y

  • 官网找到liunx的教程,根据系统选择合适的,这里是ubuntu-20.4 为例(照搬官网);一步一步执行即可

  • 这个目前docker中的ubuntu不能启动,只能在ubuntu中使用,还没找到解决办法,看看就好了

    • Packages are available for x86 and ARM CPUs, in both 32-bit and 64-bit variants.

      1. Add Tailscale’s package signing key and repository

        1
        2
        curl -fsSL https://pkgs.tailscale.com/stable/ubuntu/focal.gpg | sudo apt-key add -
        curl -fsSL https://pkgs.tailscale.com/stable/ubuntu/focal.list | sudo tee /etc/apt/sources.list.d/tailscale.list
      2. Install Tailscale

        1
        2
        sudo apt-get update
        sudo apt-get install tailscale
      3. Authenticate and connect your machine to your Tailscale network

        1
        sudo tailscale up
      4. You’re connected! You can find your Tailscale IPv4 address by running:

        1
        tailscale ip -4

      If the device you added is a server or remotely-accessed device, you may want to consider disabling key expiry to prevent the need to periodically re-authenticate.

      部分截图:image-20211118101834248image-20211118101937732

下面是crontab相关的

  • 首先安装一个crontab:apt install cron

  • 安装python3.8,后面需要使用:

  • 以root用户运行以下命令以更新软件包列表并安装必备组件:

    1
    sudo apt update

    安装必要的支持包:

    1
    sudo apt install software-properties-common

    添加 Deadsnakes PPA(一个非常好用的第三方软件源):

    1
    sudo add-apt-repository ppa:deadsnakes/ppa

    需再次回车进行确认安装。

    再次更新:

    1
    sudo apt update

    启用存储库后,请使用以下命令安装Python 3.8:

    1
    sudo apt install python3.8

    通过键入以下命令验证是否成功安装:

    1
    2
    python3.8 -v
    Python 3.8.0
  • 然后安装一个nano(vim):apt install nano (apt install vim)

  • 启动corn:service cron start

  • 然后执行: crontab -e image-20211118122715361image-20211118122724479就可以用安装的nano编辑任务了。

  • 具体任务可以看我的https://github.com/yml2213/meituan-shenquan

  • 下面我来说说简单的步骤

    • 下载项目

    • 删除不使用的文件,将mt-terminal-scripts.py改名为mt.py,方便后期使用,其余文件均可以删除image-20211118123851689

    • 上穿到群晖目录image-20211118124152803

    • 多脚本可以根据这个做目录结构image-20211118124329872

    • 然后在ubuntu中执行脚本:

      1
      python3 mt.py

      111

    • 这样文件夹中就会出现很多txt文件(想在青龙跑的话,把所有的文件放到ql-scripts中,然后定时运行即可)image-20211118125403226

    • 继续教程:终端运行:whereis python3 来确定绝对位置image-20211118125733139

    • 然后运行: crontab -e 来编辑定时:

      1
      0 11,14,17,21,0,1,2,3 * * *  /usr/bin/python3 /home/mt1/mt.py

      image-20211118130350354然后ctrl+o 保存,ctrl+x 退出就行了

    • 这样你的定时就完成了,最终应该像这样的目录结构(借用我的虚拟机图片,道理是一样的)

    • image-20211118132108344

    终于完成了以上的小目标

完结撒花🎉,期待你发现更好玩的事情

  • 搭建过程中,了解了docker的工作原理,虽然没能成功运行起来tailscale,但是总体还是很开心的
  • 祝您一次成功