Fork me on GitHub

Organizations

@github @rss
  • 难度等级: 人人可做
    images/featured-image.png
    作为Synology Diskstation的用户,我在我的Homelab网络上运行许多服务。我在Gitlab中部署软件,在Confluence中记录知识,通过Calibre网络服务器阅读技术参考资料。 所有的网络服务都是加密的,并通过中央用户管理来保证安全。 今天我展示了我是如何通过SSL加密、访问记录和LDAP访问限制来保证我的Calibre服务的。本教程需要有 “阿特拉斯公司的酷事:用LDAP使用所有阿特拉斯工具 “和 “容器的伟大之处:用Docker Compose运行Calibre “的预先知识。 我的LDAP服务器 正如我已经写过的,我在Docker容器中运行一个中央openLDAP服务器。我还创建了几个应用组。 用反向代理确保不安全的应用程序 由于 “linuxserver/calibre-web “Docker镜像不支持SSL加密和LDAP,我创建了一个名为 “calibreweb “的虚拟网络,并在Calibre服务器前放置了一个NGINX反向代理。 这就是我的Docker Compose文件的样子。所有未来的访问日志都存储在日志目录中,我的自签名证书在certs目录中。 version: '3.7' services: nginx: image: weseek/nginx-auth-ldap:1.13.9-1-alpine container_name: calibre-nginx environment: - 'TZ=Europe/Berlin' volumes: - ./default.conf:/etc/nginx/conf.d/default.conf - ./certs:/etc/certs - ./logs:/var/log/nginx ports: - 8443:443 networks: - calibreweb restart: unless-stopped calibre-web: image: linuxserver/calibre-web container_name: calibre-web environment: - PUID=..... - PGID=.... - TZ=Europe/Berlin volumes: - /volume/docker/calibre/app.
  • 难度等级: 可能需要更长的时间
    在我第一篇关于 “Gitlab on the Synology disk station “的教程之后,已经有好几次有人问我是否还在使用这个方案。没有!同时,我已经把我的Atlassian工具和下面的GitLab安装移到了intel NUC上。在此我展示了我目前的Compose文件,当然它也可以在Synology磁盘站上运行。 你可以清楚地看到我现在对OpenLDAP、容器注册表、邮件、证书和日志进行了特殊的设置。此外,由于我使用Atlassian-Jira和Atlassian-Confluence,维基和问题跟踪器功能已被停用。正如你所看到的,Gitlab是非常可定制的。玩得开心! version: '2' services: gitlab: image: 'gitlab/gitlab-ce:latest' restart: always container_name: 'gitlab_server_gitlab' environment: TZ: "Europe/Berlin" GITLAB_OMNIBUS_CONFIG: | gitlab_rails['time_zone'] = 'Europe/Berlin' external_url 'https://host:port' registry_external_url 'https://host:registry_port' registry_nginx['listen_https'] = true nginx['redirect_http_to_https'] = true registry_nginx['redirect_http_to_https'] = true mattermost_nginx['redirect_http_to_https'] = true registry_nginx['ssl_certificate'] = "..server-cert.crt" registry_nginx['ssl_certificate_key'] = "...server-cert.key" gitlab_rails['gitlab_default_projects_features_issues'] = false gitlab_rails['gitlab_default_projects_features_container_registry'] = true postgresql['enable'] = false gitlab_rails['db_username'] = "****" gitlab_rails['db_password'] = "****" gitlab_rails['db_host'] = "postgresql" gitlab_rails['db_port'] = "5432" gitlab_rails['db_database'] = "gitlabhq_production" gitlab_rails['db_adapter'] = 'postgresql' gitlab_rails['db_encoding'] = 'utf8' redis['enable'] = false gitlab_rails['redis_host'] = 'redis' gitlab_rails['redis_port'] = '6379' gitlab_rails['gitlab_shell_ssh_port'] = 22 # Limit backup lifetime to 7 days (604800 seconds): gitlab_rails['backup_keep_time'] = 604800 unicorn['worker_timeout'] = 60 unicorn['worker_processes'] = 3 nginx['enable'] = true nginx['listen_port'] = 80 nginx['client_max_body_size'] = '250m' nginx['listen_port'] = 443 nginx['redirect_http_to_https'] = true nginx['ssl_certificate'] = '.
    code development devops docker-compose git Created Wed, 24 Mar 2021 00:00:00 +0000
  • 难度等级: 可能需要更长的时间
    images/featured-image.png
    如果你有自己的Atlassian安装,你是幸运的。今天我展示了我如何将Jira、Bamboo和Confluence连接到我的LDAP服务器。 第1步:安装OpenLDAP 我已经在我的Synology NAS上用这个Docker Compose文件设置了OpenLDAP。 ersion: '2' services: openldap: restart: always image: osixia/openldap container_name: openldap environment: LDAP_TLS: 'true' LDAP_TLS_CRT_FILENAME: '....pem' LDAP_TLS_KEY_FILENAME: '......pem' LDAP_TLS_CA_CRT_FILENAME: '......pem' LDAP_ORGANISATION: "365Layouts" LDAP_DOMAIN: "homelab.local" LDAP_BASE_DN: "dc=homelab,dc=local" LDAP_ADMIN_PASSWORD: "......" LDAP_TLS_CIPHER_SUITE: "NORMAL" LDAP_TLS_VERIFY_CLIENT: "allow" LDAP_TLS_CIPHER_SUITE: NORMAL tty: true stdin_open: true volumes: - ./ldap:/var/lib/ldap - ./slapdd:/etc/ldap/slapd.d - ./certs:/container/service/slapd/assets/certs/ - ./memberof.ldif:/root/memberof.ldif - ./refint.ldif:/root/refint.ldif ports: - "389:389" - "636:636" hostname: "homelab.local" networks: - ldap phpldapadmin: restart: always image: osixia/phpldapadmin:latest container_name: phpldapadmin volumes: - .
    atlassian bamboo jira ldap openldap Created Wed, 24 Mar 2021 00:00:00 +0000
  • 难度等级: 不太容易,也不太难
    images/featured-image.png
    今天我在Bamboo中创建一个jMeter测试。当然,你也可以用Gitlab runners或Jenkins slaves实现这个测试设置。 第1步:创建jMeter测试 首先,当然,你必须创建一个jMeter测试。我从以下网址下载了jMeter:https://jmeter.apache.org/,并用这个命令启动它。 x – + Terminal $ java -jar bin/ApacheJMeter.jar 请看:我这个教程的演示测试是为了包含有问题的和工作的采样器。我故意把超时设置得很低。 我用JMX文件来保存我的Bamboo任务。 第2步:准备好竹剂 由于Java是奔步代理的先决条件,我只在事后安装Python。 x – + Terminal $ apt-get update $ apt-get install python 我创建了一个新的工作和一个外壳任务。 并插入这个shell脚本。 #!/bin/bash java -jar /tools/apache-jmeter-5.4.1/bin/ApacheJMeter.jar -n -t test.jmx -l requests.log > result.log echo "Ergebnis:" cat result.log if cat result.
    code development devops docker-compose git Created Sun, 21 Mar 2021 00:00:00 +0000
  • 难度等级: 可能需要更长的时间
    images/featured-image.png
    第1步:准备好Synology 首先,必须在 DiskStation 上激活 SSH 登录。要做到这一点,请进入 “控制面板”>“终端”。 然后你可以通过 “SSH”、指定的端口和管理员密码来登录(Windows用户使用Putty或WinSCP)。 我通过终端、winSCP或Putty登录,并将这个控制台打开以备不时之需。 第2步:准备好Docker文件夹 我在Docker目录下创建一个名为 “jenkins “的新目录。 然后我换到新的目录,创建一个新的文件夹 “data”。 x – + Terminal $ sudo mkdir data 我还创建了一个名为 “jenkins.yml “的文件,内容如下。端口 “8081: “的前面部分可以调整。 version: '2.0' services: jenkins: restart: always image: jenkins/jenkins:lts privileged: true user: root ports: - 8081:8080 container_name: jenkins volumes: - ./data:/var/jenkins_home - /var/run/docker.sock:/var/run/docker.sock - /usr/local/bin/docker:/usr/local/bin/docker 第3步:开始 在这一步,我也可以很好地利用控制台。我通过Docker Compose启动Jenkins服务器。 x – + Terminal $ sudo docker-compose -f jenkins.
    build devops diskstation java javascript Created Sun, 21 Mar 2021 00:00:00 +0000
  • 难度等级: 不太容易,也不太难
    images/featured-image.png
    有一天,我想改编一个外国Java库中的方法,因此正在寻找一个合适的工具。我对字节码编辑器和字节码进行了大量研究。但最终我还是选择了Recaf,我感到非常兴奋: https://github.com/Col-E/Recaf 该工具可以在以下地址找到:https://github.com/Col-E/Recaf/releases。使用Recaf!反编译、重新编译和操作库是小菜一碟。最好是马上尝试一下。 x – + Terminal $ java -jar recaf-2.18.2-J8-jar-with-dependencies.jar
  • 难度等级: 很有运动精神
    images/featured-image.png
    通过ESXi,“intel NUC “可以被划分为任何数量的计算机。在本教程中,我展示了我是如何在我的NUC上安装VMware ESXi的。小前言:我建议在安装ESXi之前进行BIOS更新。你还将需要一个32GB的U盘。我从亚马逊买了一整捆,每捆不到5欧元。 我的NUC-8I7BEH有2个16GB HyperX Impact内存,1个256GB三星970 EVO M2模块和一个1TB 2.5英寸WD-RED硬盘。 第1步:找到USB棒 下面的命令显示了我所有的驱动器。 x – + Terminal $ diskutil list 这里你可以看到我的U盘的标识符是 “disk2”。 第2步:准备好文件系统 现在我可以使用以下命令来准备文件系统。 x – + Terminal $ $ diskutil eraseDisk MS-DOS "ESXI" MBR disk2 之后,我在Finder中也看到了标识符。 第3步:弹出U盘 我使用 “unmountDisk “命令弹出该卷。 x – + Terminal $ $ diskutil unmountDisk /dev/disk2 见。 第4步:使记忆棒可启动 现在我们输入命令 “sudo fdisk -e /dev/disk2”,然后输入 “f 1”、“write “和 “quit”,见。 第5步:复制数据 现在我必须下载ESXi-ISO:https://www.
    esxi homelab hypervisor linux nuc Created Sun, 07 Mar 2021 00:00:00 +0000
  • 难度等级: 人人可做
    images/featured-image.png
    在Docker容器中收集所有你喜欢的菜谱,并按你的意愿组织它们。编写你自己的食谱或从网站导入食谱,例如 “Chefkoch”、“Essen “等。 专业人士的选择 作为一个有经验的Synology用户,你当然可以用SSH登录并通过Docker Compose文件安装整个设置。 version: "2.0" services: mealie: container_name: mealie image: hkotel/mealie:latest restart: always ports: - 9000:80 environment: db_type: sqlite TZ: Europa/Berlin volumes: - ./mealie/data/:/app/data 第1步:搜索Docker镜像 我在Synology Docker窗口中点击 “注册 “选项卡并搜索 “dinnerie”。我选择Docker镜像 “hkotel/mealie:fresh”,然后点击标签 “最新”。 图像下载后,可作为图像使用。Docker区分了两种状态,容器 “动态状态 “和图像/影像(固定状态)。在我们从镜像中创建一个容器之前,必须进行一些设置。 第2步:将图像投入运行。 我双击我的 “饭团 “图像。 然后我点击 “高级设置”,激活 “自动重新启动”。我选择 “卷 “选项卡并点击 “添加文件夹”。我在那里创建了一个新的文件夹,挂载路径为”/app/data”。 我为 “Mealie “容器分配了固定端口。没有固定的端口,可能是 “Mealie服务器 “在重启后运行在不同的端口。 最后,我输入两个环境变量。变量 “db_type “是数据库类型,“TZ “是时区 “Europe/Berlin”。 做完这些设置后,就可以启动Mealie服务器了!
  • 难度等级: 可能需要更长的时间
    images/featured-image.jpg
    用Raspberry Noobs进行安装是小儿科!你只需要一个RaspberryZeroW和一张空白SD卡。 第1步:Noobs安装程序 从https://www.raspberrypi.org/downloads/noobs/ 下载Noobs安装程序。 第2步:SD卡 在空的SD卡上解压这个压缩文件。 完成了!现在你可以把RaspberryPiZero连接到电视上。然后你会看到安装菜单。 如果你的卡上有NoobsLite,你必须首先建立一个WLAN连接。然后选择 “Rasbian Lite “并点击 “安装”。Rasbian Lite是没有桌面的服务器版本。启动后,必须更新软件包管理。 x – + Terminal $ sudo apt-get update 之后,必须安装以下软件包。 x – + Terminal $ sudo apt-get install -y nodm matchbox-window-manager uzbl xinit vim 还必须为仪表板显示创建一个用户。 x – + Terminal $ sudo adduser dashboard 以 “仪表板 “用户身份登录。 x – + Terminal $ sudo su dashboard 创建一个X-Session -Script。我可以用光标键换到这一行,用 “i “键换到插入模式。 x – + Terminal $ sudo vim ~/.
    git gitlab issueboard issues javascript Created Sat, 06 Mar 2021 00:00:00 +0000
  • 难度等级: 可能需要更长的时间
    images/featured-image.png
    我在我的Homelab网络中运行许多服务,例如LDAP、Gitlab、Atlassian Bamboo、Atlassian Confluence、Atlassian Jira、Jenkins、WordPress、Grafana、Graylog、ESXI/VMware、Calibre等等。这很容易让人失去对一切的追踪。 第1步:创建工作文件夹 使用该命令创建一个临时工作文件夹。 x – + Terminal $ mkdir /tmp/bilder Heimdall是一项允许你通过仪表板管理书签的服务。由于我使用Docker for Desktop,我只需要把这个Docker Compose文件放在本地文件夹中。 version: "2.1" services: heimdall: image: linuxserver/heimdall container_name: heimdall environment: - PUID=1000 - PGID=1000 - TZ=Europe/Berlin volumes: - /Users/christianknedel/docker/heimdall/config:/config ports: - 80:80 - 443:443 restart: always 这个文件是通过Docker Compose启动的。 x – + Terminal $ ocker-compose -f compose-file.yml up -d