首页 > 系统相关 >windows WSL安装hedgedoc

windows WSL安装hedgedoc

时间:2023-05-26 12:34:31浏览次数:45  
标签:hedgedoc windows sudo WSL apt Ubuntu docker Docker

  1. Git
    WSL似乎默认装好了git, 用下面命令查一下可以查到

    root@DESKTOP-FTUL9EC:~# git --version
    git version 2.25.1
    
  2. Docker 17.03.1 or higher
    看了官方文档,安装docker engine需要如下ubuntu版本:
    Ubuntu Lunar 23.04
    Ubuntu Kinetic 22.10
    Ubuntu Jammy 22.04 (LTS)
    Ubuntu Focal 20.04 (LTS)
    Ubuntu Bionic 18.04 (LTS)

    而我的WSL版本是Ubuntu 20.04 (LTS),满足要求,我选择了通过“apt repository”安装docker engine,按照官网上给的步骤安装即可。注意!要用wsl2以及Ubuntu 20.04 (LTS), 不要用wsl1和Ubuntu 18.04,否则会遇到难以解决的莫名其妙的问题。

    PS C:\Users\xx>wsl --set-default-version 2
    PS C:\Users\xx>wsl --install  Ubuntu-20.04
    PS C:\Users\xx> wsl -l -v
    NAME                   STATE           VERSION
    Ubuntu-20.04           Running         2
    

    步骤:

    1. 更新你现有的软件包列表,并为后面的步骤安装一些依赖项

      $ sudo apt update
      $ sudo apt install ca-certificates curl gnupg lsb-release
      

      Docker将软件包发布到自己的 apt 仓库。你需要将这个仓库添加到你的 apt 源列表中,否则,你的 apt 安装将无法找到Docker包。

      ca-certificates, curl, gnupg 和 lsb_release 工具将被用来下载正确的Docker apt 仓库细节和你系统的签名密钥。尽管你可能已经有了这些软件包,但确保它们是可用的也无妨。

      1. 在apt上注册Docker的GPG密钥圈。这将让 apt 验证你安装的Docker包。
      $ sudo mkdir -p /etc/apt/keyrings
      $ curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo gpg --dearmor -o /etc/apt/keyrings/docker.gpg
      $ sudo chmod a+r /etc/apt/keyrings/docker.gpg
      

      curl 命令为Ubuntu下载Docker的GPG密钥,将其转换为标准的OpenGPG编码,并将其保存到apt的keyring目录中。

      chmod 用来设置keyring文件的权限,以便 apt 能够可靠地检测到它。
      3. 把Docker包的源代码添加到你的系统中

      echo \
        "deb [arch="$(dpkg --print-architecture)" signed-by=/etc/apt/keyrings/docker.gpg] https://download.docker.com/linux/ubuntu \
        "$(. /etc/os-release && echo "$VERSION_CODENAME")" stable" | \
        sudo tee /etc/apt/sources.list.d/docker.list > /dev/null
      
      1. 再次更新你的软件包列表,让 apt 知道Docker软件包的存在
      $ sudo apt update
      
      1. 使用 apt install 命令将Docker的组件添加到系统中
      sudo apt-get install docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin
      
      1. 验证docker engine是否安装成功
      sudo docker run hello-world
      

      出现“ Unable to find image 'hello-world:latest' locally, latest: Pulling from library/hello-world,719385e32844: Pull complete”,表明docker engine安装成功了。

  3. Docker Compose
    apt install docker-compose

  4. 官网找到最新的docker compose.yml文件配置,并拷贝到wsl你想要放的位置,如~/hedgedoc.

    root@DESKTOP-FTUL9EC:~# mkdir hedgeDoc
    root@DESKTOP-FTUL9EC:~# cd hedgeDoc/
    root@DESKTOP-FTUL9EC:~#  cp /mnt/d/hedgeDoc .  #从windows把docker compose.yml拷贝到wsl
    root@DESKTOP-FTUL9EC:~/hedgeDoc# docker-compose up -d
    

    docker会开始下载镜像启动容器,如果看到下面的输出则表示成功了。

    b0c140f524d9: Pull complete
    Digest: sha256:2763471ad097ea6650f7486024aceec0dfd8cdb4850c8c38e4e293f8309ad16d
    Status: Downloaded newer image for quay.io/hedgedoc/hedgedoc:1.9.7
    Creating hedgedoc_database_1 ... done
    Creating hedgedoc_app_1 ... done

  5. 在浏览器访问 http://localhost:3000/ , 即可看到hedgedoc的首页。开始写你的markdown文档吧~
    image

附:docker-compose.yml

          version: '3'
          services:
            database:
              image: postgres:13.4-alpine
              environment:
                - POSTGRES_USER=hedgedoc
                - POSTGRES_PASSWORD=password
                - POSTGRES_DB=hedgedoc
              volumes:
                - database:/var/lib/postgresql/data
              restart: always
            app:
              # Make sure to use the latest release from https://hedgedoc.org/latest-release
              image: quay.io/hedgedoc/hedgedoc:1.9.7
              environment:
                - CMD_DB_URL=postgres://hedgedoc:password@database:5432/hedgedoc
                - CMD_DOMAIN=localhost
                - CMD_URL_ADDPORT=true
              volumes:
                - uploads:/hedgedoc/public/uploads
              ports:
                - "3000:3000"
              restart: always
              depends_on:
                - database
          volumes:
            database:
            uploads:
        ```

标签:hedgedoc,windows,sudo,WSL,apt,Ubuntu,docker,Docker
From: https://www.cnblogs.com/stxz/p/17434419.html

相关文章

  • 关于开启windows自带虚拟机
    开启Windows自带虚拟机这次在工作中写了一个打印的工具,开始时并未考虑周全,用的.netfromwork4.8的框架,结果安装到win7的机器上,直接打不开了,而目前公司里已经找不到win7系统的电脑了,很多硬件已经不再支持win7,所以,需要安装一下虚拟机,进行测试。由于我的电脑是家庭版的所以......
  • nginx windows下重载配置失败
    正常操作命令是:cdC:\ProgramFiles\nginx&&nginx-sreload。但是把nginx安装为windows服务运行后,再执行重载就不好使了。会报错:nginx:[error]OpenEvent("Global\ngx_reload_4460")failed(5:Accessisdenied),即便是用管理员运行cmd权限也不够。 【解决办法】1.下载......
  • 如何让python程序在windows下开机启动
    说明简述:通过将启动脚本写入注册表\HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Run来实现开机自启问题:这种开机启动比较奇怪,运行路径是cmd.exe的路径,所以执行需要自启的程序时,读取其他相对路径的文件会有错误解决:执行启动前,切一下目录启动脚本importos......
  • Windows——on-screen menus are locked怎么解除
    出现OSDLOCKED是菜单被锁的,具体的清除方法如下:1、如果OSD已锁定,请持续按住Menu按钮(最左边第一个)10秒钟就可以解除锁定OSD。2、如果OSD未锁定,请持续按住Menu按钮10秒钟就可以锁定OSD。 简介:OSD是OnScreenDisplay的缩写,即屏幕菜单式调节显示。是在显示器......
  • windows server2016 操作系统修改默认远程端口
    一、需求   远程端口,windows默认的3389.linux的22,这种都是知名端口,如果IP地址暴露,很可能会被攻击,这时候就需要更改端口号。二、操作步骤2.1打开注册表   快捷键WIN+R,命令行窗口输入regedit2.2进入以下路径  这里是默认端口,修改为自己除1024以后,以及未被......
  • WSL 启动Ubuntu18.04默认设置网络和开启SSH
    1、wsl-ip.bat脚本@echoonREM先关闭虚拟子系统wsl--shutdownREM以下的Ubuntu为第2步查到的Linux子系统名称REMIP地址根据自己的需要配置wsl-dUbuntu-18.04-urootipaddrdel$(ipaddrshoweth0^|grep'inet\b'^|awk'{print$2}'^|head-n1)deveth0w......
  • Windows常用的 CMD 命令合集
    常用的CMD命令合集:基础命令dir:列出当前目录中的文件和子目录。cd:更改当前目录。例如,cdDocuments将当前目录更改为Documents文件夹。md或mkdir:创建一个新目录。例如,mkdirNewFolder将在当前目录下创建一个名为NewFolder的新目录。rd或rmdir:删除一个空目录。例如......
  • Windows安装Docker
    Windows安装Docker的条件Windows10及以上。需要启用Hyper-V和容器特性。启用Hyper-V和容器特性1.右键桌面最左下角的"开始"窗口,选择"应用和功能"2.点击"程序和功能"3.选择"启用或关闭Windows功能"4.勾选"Hyper-V"以及"容器"下载docker-desktop下载地址:https......
  • Linux和Windows下使用指定的JDK运行jar包
    Linux1.下载jdk软件包(例如:jdk-8u161-linux-x64.tar.gz)后解压2.启动jar命令jdk根目录/bin/java-jarxx.jarWindows1.下载jdk环境(jre文件夹)2.启动jar命令jdk根目录/bin/java-jarxx.jar ......
  • 关闭Windows更新服务bat
    @echooff>nul2>&1"%SYSTEMROOT%\system32\cacls.exe""%SYSTEMROOT%\system32\config\system"if'%errorlevel%'NEQ'0'(gotoUACPrompt)else(gotogotAdmin):UACPromptechoSetUAC=CreateObject^(......