home.social

#ghcr — Public Fediverse posts

Live and recent posts from across the Fediverse tagged #ghcr, aggregated by home.social.

  1. Pro-Grade Ham Radio Displays: Integrating OpenHamClock into PiSignage

    758 words, 4 minutes read time.

    A Helping Hand Needed for a Fellow Programmer

    I’m reaching out to see if you can lend a hand to a talented software developer who’s currently on the job hunt. With over 30 years of experience in C#, .NET (Core/6–8), REST APIs, SQL Server, Angular/Razor, Kubernetes, and cloud CI/CD, he’s a seasoned pro with a proven track record of leading modernization projects and delivering production systems.

    Some of his notable accomplishments include DB2 to SQL migrations, building real-time SignalR apps, and developing full-stack API and frontend projects. Based in Southeast Michigan, he’s looking for senior engineering, architecture, or technical lead roles that will challenge him and utilize his skills.

    If you’re in a position to help, you can check out his resume and portfolio at http://charles.friasteam.com.

    Let’s all look out for each other – if you know of any opportunities that might be a good fit, could you please consider passing this along to your network?

    If you are a ham radio operator, you know that a HamClock is the ultimate shack companion. But what if you want to move beyond a dedicated small screen and integrate that data-rich display into a professional digital signage environment?

    By using PiSignage, you can rotate your HamClock with other station metrics, weather, or club announcements. However, getting a clean, secure, and “pop-up free” experience requires a few tricks.

    In this post, I’ll show you how to deploy OpenHamClock using Docker and how to strip away the UI clutter for a seamless kiosk experience.

    The Setup

    To follow along, you will need a PiSignage server instance. I personally run mine as a Docker container, which keeps the server stack isolated and easy to back up.

    1. The Docker Compose Configuration

    PiSignage and modern browsers often require secure contexts (HTTPS) for certain features. Since the standard HamClock output is HTTP, we’ll use a two-service setup: the clock itself and a lightweight SSL-wrap sidecar using socat and openssl.

    docker-componse.yml

     services:    openhamclock:      image: ghcr.io/accius/openhamclock:latest      container_name: openhamclock      expose:        - "3000"      environment:        - CALLSIGN=<CALL SIGN>        - LOCATOR=<Grid Square Locator>        - THEME=dark        - UNITS=imperial      restart: unless-stopped     ssl-wrap:      image: alpine      container_name: hamclock-ssl      ports:        - "3000:3000"      command: >        sh -c "apk add --no-cache socat openssl &&                openssl req -x509 -newkey rsa:2048 -keyout /tmp/key.pem -out /tmp/cert.pem -days 365 -nodes -subj '/CN=localhost' &&               cat /tmp/cert.pem /tmp/key.pem > /tmp/combined.pem &&               socat OPENSSL-LISTEN:3000,cert=/tmp/combined.pem,verify=0,fork,reuseaddr TCP:openhamclock:3000"      restart: unless-stopped 

    2. Silencing the “What’s New” Pop-ups

    When using HamClock as a signage element, you want it to be “set and forget.” The “What’s New” slide-ins are helpful for desktop users but ruin a clean kiosk display.

    While there is a formal change request pending for a toggle, you can currently “force” these elements to stay hidden by injecting a bit of CSS directly into the distribution files. Run this command within your app environment:

    find /app/dist -name "*.css" -exec sh -c 'echo "div[style*=\"whatsNewSlideIn\"], div[style*=\"backdrop-filter\"] { display: none !important; }" >> {}' \;
    

    3. Setting Up the Slide in PiSignage

    Once your containers are humming along, you need to tell PiSignage how to display the clock.

    Create the Weblink Asset

    1. Log in to your PiSignage Admin Panel.
    2. Navigate to Assets > Add > Weblink.
    3. Fill in the details:
      • Name: OpenHamClock
      • Link Address: https://<YOUR-HOSTNAME>:3000/?kiosk=true
    4. Click Save.

    Pro Tip: The ?kiosk=true suffix is critical. It tells HamClock to hide its own internal menus and headers, giving you a dedicated, high-contrast dashboard perfect for a wall-mounted display.

    Deploy to Your Player

    1. Go to Playlists and add your new “OpenHamClock” asset.
    2. Set the Duration: Set this to 0 for a permanent display, or a high number (like 300 for 5 minutes) if it’s part of a rotation.
    3. Go to Groups, select your player, and deploy the playlist.

    Your screen should refresh and show a beautiful, clean HamClock interface within seconds!

    Running PiSignage in Docker?

    For those of you looking to keep your entire server stack contained, running the PiSignage central server in Docker is the way to go. It keeps your host OS clean and makes management a breeze.

    If you’d like me to discuss how to set up a dockerized PiSignage server, please comment below!

    — 73 —

    Call to Action

    Getting this stack to play nice wasn’t a “one-and-done” install. It was a hard-fought process that took multiple attempts to finally crack the code on bypassing those “What’s New” screens and forcing a clean kiosk display. But the victory is in the uptime.

    Don’t just lurk. If you’ve got the guts to show how you’re rebuilding your station on the wreckage of the old ways, drop a comment below. How are you occupying the victory today?

    SUPPORTSUBSCRIBECONTACT ME

    D. Bryan King

    Sources

    Disclaimer:

    I love sharing what I’m learning, but please keep in mind that everything I write here—including this post—is just my personal take. These are my own opinions based on my research and my understanding of things at the time I’m writing them. Since life moves way too fast and things change quickly, please use your own best judgment and consult the experts for your specific situations!

    Related Posts

    Rate this:

    #AlpineLinux #AmateurRadioDashboard #amateurRadioTechnology #Automation #containerization #CSSInjection #CustomCSS #DetroitHamRadio #devops #DigitalDashboard #DigitalSignage #DisplaySolutions #Docker #DockerCompose #DXCluster #EN82le #GHCR #gridSquare #hamRadio #HamRadioKiosk #hamRadioSoftware #hamRadioTools #HamClock #HomeLab #HTTPSWrapper #KioskMode #KioskSetup #KioskTrue #Linux #MaidenheadLocator #networkSecurity #OpenSource #OpenHamClock #OpenSSL #piSignage #PiSignageDocker #PiSignageTips #RadioStationDisplay #RaspberryPi #RaspberryPiProjects #realTimeData #RemoteMonitoring #ScreenRotation #SelfHosted #ServerManagement #ShackClock #SignalTracking #SmartShack #Socat #SoftwareWorkaround #SolarData #SSLWrap #StationIntegration #TechGuide #TechnicalTutorial #UITweaks #W8DBK #WebDevelopment #WebLinkAsset
  2. Pro-Grade Ham Radio Displays: Integrating OpenHamClock into PiSignage

    758 words, 4 minutes read time.

    A Helping Hand Needed for a Fellow Programmer

    I’m reaching out to see if you can lend a hand to a talented software developer who’s currently on the job hunt. With over 30 years of experience in C#, .NET (Core/6–8), REST APIs, SQL Server, Angular/Razor, Kubernetes, and cloud CI/CD, he’s a seasoned pro with a proven track record of leading modernization projects and delivering production systems.

    Some of his notable accomplishments include DB2 to SQL migrations, building real-time SignalR apps, and developing full-stack API and frontend projects. Based in Southeast Michigan, he’s looking for senior engineering, architecture, or technical lead roles that will challenge him and utilize his skills.

    If you’re in a position to help, you can check out his resume and portfolio at http://charles.friasteam.com.

    Let’s all look out for each other – if you know of any opportunities that might be a good fit, could you please consider passing this along to your network?

    If you are a ham radio operator, you know that a HamClock is the ultimate shack companion. But what if you want to move beyond a dedicated small screen and integrate that data-rich display into a professional digital signage environment?

    By using PiSignage, you can rotate your HamClock with other station metrics, weather, or club announcements. However, getting a clean, secure, and “pop-up free” experience requires a few tricks.

    In this post, I’ll show you how to deploy OpenHamClock using Docker and how to strip away the UI clutter for a seamless kiosk experience.

    The Setup

    To follow along, you will need a PiSignage server instance. I personally run mine as a Docker container, which keeps the server stack isolated and easy to back up.

    1. The Docker Compose Configuration

    PiSignage and modern browsers often require secure contexts (HTTPS) for certain features. Since the standard HamClock output is HTTP, we’ll use a two-service setup: the clock itself and a lightweight SSL-wrap sidecar using socat and openssl.

    docker-componse.yml

     services:    openhamclock:      image: ghcr.io/accius/openhamclock:latest      container_name: openhamclock      expose:        - "3000"      environment:        - CALLSIGN=<CALL SIGN>        - LOCATOR=<Grid Square Locator>        - THEME=dark        - UNITS=imperial      restart: unless-stopped     ssl-wrap:      image: alpine      container_name: hamclock-ssl      ports:        - "3000:3000"      command: >        sh -c "apk add --no-cache socat openssl &&                openssl req -x509 -newkey rsa:2048 -keyout /tmp/key.pem -out /tmp/cert.pem -days 365 -nodes -subj '/CN=localhost' &&               cat /tmp/cert.pem /tmp/key.pem > /tmp/combined.pem &&               socat OPENSSL-LISTEN:3000,cert=/tmp/combined.pem,verify=0,fork,reuseaddr TCP:openhamclock:3000"      restart: unless-stopped 

    2. Silencing the “What’s New” Pop-ups

    When using HamClock as a signage element, you want it to be “set and forget.” The “What’s New” slide-ins are helpful for desktop users but ruin a clean kiosk display.

    While there is a formal change request pending for a toggle, you can currently “force” these elements to stay hidden by injecting a bit of CSS directly into the distribution files. Run this command within your app environment:

    find /app/dist -name "*.css" -exec sh -c 'echo "div[style*=\"whatsNewSlideIn\"], div[style*=\"backdrop-filter\"] { display: none !important; }" >> {}' \;
    

    3. Setting Up the Slide in PiSignage

    Once your containers are humming along, you need to tell PiSignage how to display the clock.

    Create the Weblink Asset

    1. Log in to your PiSignage Admin Panel.
    2. Navigate to Assets > Add > Weblink.
    3. Fill in the details:
      • Name: OpenHamClock
      • Link Address: https://<YOUR-HOSTNAME>:3000/?kiosk=true
    4. Click Save.

    Pro Tip: The ?kiosk=true suffix is critical. It tells HamClock to hide its own internal menus and headers, giving you a dedicated, high-contrast dashboard perfect for a wall-mounted display.

    Deploy to Your Player

    1. Go to Playlists and add your new “OpenHamClock” asset.
    2. Set the Duration: Set this to 0 for a permanent display, or a high number (like 300 for 5 minutes) if it’s part of a rotation.
    3. Go to Groups, select your player, and deploy the playlist.

    Your screen should refresh and show a beautiful, clean HamClock interface within seconds!

    Running PiSignage in Docker?

    For those of you looking to keep your entire server stack contained, running the PiSignage central server in Docker is the way to go. It keeps your host OS clean and makes management a breeze.

    If you’d like me to discuss how to set up a dockerized PiSignage server, please comment below!

    — 73 —

    Call to Action

    Getting this stack to play nice wasn’t a “one-and-done” install. It was a hard-fought process that took multiple attempts to finally crack the code on bypassing those “What’s New” screens and forcing a clean kiosk display. But the victory is in the uptime.

    Don’t just lurk. If you’ve got the guts to show how you’re rebuilding your station on the wreckage of the old ways, drop a comment below. How are you occupying the victory today?

    SUPPORTSUBSCRIBECONTACT ME

    D. Bryan King

    Sources

    Disclaimer:

    I love sharing what I’m learning, but please keep in mind that everything I write here—including this post—is just my personal take. These are my own opinions based on my research and my understanding of things at the time I’m writing them. Since life moves way too fast and things change quickly, please use your own best judgment and consult the experts for your specific situations!

    Related Posts

    Rate this:

    #AlpineLinux #AmateurRadioDashboard #amateurRadioTechnology #Automation #containerization #CSSInjection #CustomCSS #DetroitHamRadio #devops #DigitalDashboard #DigitalSignage #DisplaySolutions #Docker #DockerCompose #DXCluster #EN82le #GHCR #gridSquare #hamRadio #HamRadioKiosk #hamRadioSoftware #hamRadioTools #HamClock #HomeLab #HTTPSWrapper #KioskMode #KioskSetup #KioskTrue #Linux #MaidenheadLocator #networkSecurity #OpenSource #OpenHamClock #OpenSSL #piSignage #PiSignageDocker #PiSignageTips #RadioStationDisplay #RaspberryPi #RaspberryPiProjects #realTimeData #RemoteMonitoring #ScreenRotation #SelfHosted #ServerManagement #ShackClock #SignalTracking #SmartShack #Socat #SoftwareWorkaround #SolarData #SSLWrap #StationIntegration #TechGuide #TechnicalTutorial #UITweaks #W8DBK #WebDevelopment #WebLinkAsset
  3. Sengaja tulis ini pakai akun misskey biar gak kejedot limit karakter.

    Mengapa saya menggunakan dan menginstruksikan lingkungan yang berada dalam kendali saya menggunakan #podman bukan #docker dalam menjalankan #container

    Pertama, docker membutuhkan daemon (yang defaultnya berjalan sebagai root) sedangkan podman sifatnya daemonless. Disini ada single point-of-failure. Sehingga jika ada bug atau apa, docker akan lebih rentan bisa menganggu host. Selain itu hal ini mengharuskan user yang ingin menjalankan container harus tergabung dalam group docker. Berbeda dengan podman dimana container yang dijalankan akan menjadi child-process dari user yang menjalankan.

    Ada update pada runtime docker? Kita harus me-restart daemon docker dan artinya akan me-restart semua container yang berjalan.

    Docker (katanya) fokus pada masing-masing container dan mengandalkan tool docker-compose untuk membungkus beberapa container, sedangkan podman mengenal konsep pod secara native yang menyerupai konsep pada pengoperasian #kubernetes. Bahkan podman bisa membuat yaml kubernetes dari pod.

    Podman hanya kalah popular. Mungkin ini disebabkan karena docker adalah pelopor yang sukses. Mungkin anda akan berpikir kan banyaknya container-container yang tersedia adalah untuk docker seperti yang tersaji di Docker Hub. Tapi tahukah anda? Container image podman dan docker adalah sama, mengikuti standar OCI (Open Container Initiative). Jadi anda dapat menjalankan semua container image yang tersedia di Docker Hub dan container registry lain seperti #ghcr atau #quay dengan menggunakan podman.

    Integrasi container-container dengan sistem juga akan lebih sederhana (kalau anda sudah menyadarinya). Docker menggunakan mekanisme sendiri untuk start/stop/restart container. Sedangkan container pada podman bisa sangat terintegrasi dengan #systemd, apalagi sejak dikenalkannya #quadlet. Format file quadlet sangatlah identik dengan file unit servis systemd. Dengan penggunaan quadlet, anda dapat start/stop/restart dengan menggunakan systemctl nya systemd.

    PS: Penjelasan tadi adalah jawaban formal. Sebenarnya mengapa saya menggunakan podman adalah karena saya pengguna setia environment #Fedora dan #RHEL ✌✌✌✌✌
  4. Sengaja tulis ini pakai akun misskey biar gak kejedot limit karakter.

    Mengapa saya menggunakan dan menginstruksikan lingkungan yang berada dalam kendali saya menggunakan #podman bukan #docker dalam menjalankan #container

    Pertama, docker membutuhkan daemon (yang defaultnya berjalan sebagai root) sedangkan podman sifatnya daemonless. Disini ada single point-of-failure. Sehingga jika ada bug atau apa, docker akan lebih rentan bisa menganggu host. Selain itu hal ini mengharuskan user yang ingin menjalankan container harus tergabung dalam group docker. Berbeda dengan podman dimana container yang dijalankan akan menjadi child-process dari user yang menjalankan.

    Ada update pada runtime docker? Kita harus me-restart daemon docker dan artinya akan me-restart semua container yang berjalan.

    Docker (katanya) fokus pada masing-masing container dan mengandalkan tool docker-compose untuk membungkus beberapa container, sedangkan podman mengenal konsep pod secara native yang menyerupai konsep pada pengoperasian #kubernetes. Bahkan podman bisa membuat yaml kubernetes dari pod.

    Podman hanya kalah popular. Mungkin ini disebabkan karena docker adalah pelopor yang sukses. Mungkin anda akan berpikir kan banyaknya container-container yang tersedia adalah untuk docker seperti yang tersaji di Docker Hub. Tapi tahukah anda? Container image podman dan docker adalah sama, mengikuti standar OCI (Open Container Initiative). Jadi anda dapat menjalankan semua container image yang tersedia di Docker Hub dan container registry lain seperti #ghcr atau #quay dengan menggunakan podman.

    Integrasi container-container dengan sistem juga akan lebih sederhana (kalau anda sudah menyadarinya). Docker menggunakan mekanisme sendiri untuk start/stop/restart container. Sedangkan container pada podman bisa sangat terintegrasi dengan #systemd, apalagi sejak dikenalkannya #quadlet. Format file quadlet sangatlah identik dengan file unit servis systemd. Dengan penggunaan quadlet, anda dapat start/stop/restart dengan menggunakan systemctl nya systemd.

    PS: Penjelasan tadi adalah jawaban formal. Sebenarnya mengapa saya menggunakan podman adalah karena saya pengguna setia environment #Fedora dan #RHEL ✌✌✌✌✌
  5. Sengaja tulis ini pakai akun misskey biar gak kejedot limit karakter.

    Mengapa saya menggunakan dan menginstruksikan lingkungan yang berada dalam kendali saya menggunakan #podman bukan #docker dalam menjalankan #container

    Pertama, docker membutuhkan daemon (yang defaultnya berjalan sebagai root) sedangkan podman sifatnya daemonless. Disini ada single point-of-failure. Sehingga jika ada bug atau apa, docker akan lebih rentan bisa menganggu host. Selain itu hal ini mengharuskan user yang ingin menjalankan container harus tergabung dalam group docker. Berbeda dengan podman dimana container yang dijalankan akan menjadi child-process dari user yang menjalankan.

    Ada update pada runtime docker? Kita harus me-restart daemon docker dan artinya akan me-restart semua container yang berjalan.

    Docker (katanya) fokus pada masing-masing container dan mengandalkan tool docker-compose untuk membungkus beberapa container, sedangkan podman mengenal konsep pod secara native yang menyerupai konsep pada pengoperasian #kubernetes. Bahkan podman bisa membuat yaml kubernetes dari pod.

    Podman hanya kalah popular. Mungkin ini disebabkan karena docker adalah pelopor yang sukses. Mungkin anda akan berpikir kan banyaknya container-container yang tersedia adalah untuk docker seperti yang tersaji di Docker Hub. Tapi tahukah anda? Container image podman dan docker adalah sama, mengikuti standar OCI (Open Container Initiative). Jadi anda dapat menjalankan semua container image yang tersedia di Docker Hub dan container registry lain seperti #ghcr atau #quay dengan menggunakan podman.

    Integrasi container-container dengan sistem juga akan lebih sederhana (kalau anda sudah menyadarinya). Docker menggunakan mekanisme sendiri untuk start/stop/restart container. Sedangkan container pada podman bisa sangat terintegrasi dengan #systemd, apalagi sejak dikenalkannya #quadlet. Format file quadlet sangatlah identik dengan file unit servis systemd. Dengan penggunaan quadlet, anda dapat start/stop/restart dengan menggunakan systemctl nya systemd.

    PS: Penjelasan tadi adalah jawaban formal. Sebenarnya mengapa saya menggunakan podman adalah karena saya pengguna setia environment #Fedora dan #RHEL ✌✌✌✌✌
  6. Sengaja tulis ini pakai akun misskey biar gak kejedot limit karakter.

    Mengapa saya menggunakan dan menginstruksikan lingkungan yang berada dalam kendali saya menggunakan #podman bukan #docker dalam menjalankan #container

    Pertama, docker membutuhkan daemon (yang defaultnya berjalan sebagai root) sedangkan podman sifatnya daemonless. Disini ada single point-of-failure. Sehingga jika ada bug atau apa, docker akan lebih rentan bisa menganggu host. Selain itu hal ini mengharuskan user yang ingin menjalankan container harus tergabung dalam group docker. Berbeda dengan podman dimana container yang dijalankan akan menjadi child-process dari user yang menjalankan.

    Ada update pada runtime docker? Kita harus me-restart daemon docker dan artinya akan me-restart semua container yang berjalan.

    Docker (katanya) fokus pada masing-masing container dan mengandalkan tool docker-compose untuk membungkus beberapa container, sedangkan podman mengenal konsep pod secara native yang menyerupai konsep pada pengoperasian #kubernetes. Bahkan podman bisa membuat yaml kubernetes dari pod.

    Podman hanya kalah popular. Mungkin ini disebabkan karena docker adalah pelopor yang sukses. Mungkin anda akan berpikir kan banyaknya container-container yang tersedia adalah untuk docker seperti yang tersaji di Docker Hub. Tapi tahukah anda? Container image podman dan docker adalah sama, mengikuti standar OCI (Open Container Initiative). Jadi anda dapat menjalankan semua container image yang tersedia di Docker Hub dan container registry lain seperti #ghcr atau #quay dengan menggunakan podman.

    Integrasi container-container dengan sistem juga akan lebih sederhana (kalau anda sudah menyadarinya). Docker menggunakan mekanisme sendiri untuk start/stop/restart container. Sedangkan container pada podman bisa sangat terintegrasi dengan #systemd, apalagi sejak dikenalkannya #quadlet. Format file quadlet sangatlah identik dengan file unit servis systemd. Dengan penggunaan quadlet, anda dapat start/stop/restart dengan menggunakan systemctl nya systemd.

    PS: Penjelasan tadi adalah jawaban formal. Sebenarnya mengapa saya menggunakan podman adalah karena saya pengguna setia environment #Fedora dan #RHEL ✌✌✌✌✌
  7. Finally got time to update the source of my bentopdf instance, to avoid pulling from the "discontinued" docker hub version

    Remember to switch to ghcr.io/alam00000/bentopdf-simple:1.15.3 to avoid being compromised by the other version

    More context: github.com/alam00000/bentopdf/

    #selfhosted #selfhosting #pdf #homelab #security #docker #dockerhub #ghcr #

  8. Finally got time to update the source of my bentopdf instance, to avoid pulling from the "discontinued" docker hub version

    Remember to switch to ghcr.io/alam00000/bentopdf-simple:1.15.3 to avoid being compromised by the other version

    More context: github.com/alam00000/bentopdf/

    #selfhosted #selfhosting #pdf #homelab #security #docker #dockerhub #ghcr #

  9. Finally got time to update the source of my bentopdf instance, to avoid pulling from the "discontinued" docker hub version

    Remember to switch to ghcr.io/alam00000/bentopdf-simple:1.15.3 to avoid being compromised by the other version

    More context: github.com/alam00000/bentopdf/

    #selfhosted #selfhosting #pdf #homelab #security #docker #dockerhub #ghcr #

  10. Finally got time to update the source of my bentopdf instance, to avoid pulling from the "discontinued" docker hub version

    Remember to switch to ghcr.io/alam00000/bentopdf-simple:1.15.3 to avoid being compromised by the other version

    More context: github.com/alam00000/bentopdf/

    #selfhosted #selfhosting #pdf #homelab #security #docker #dockerhub #ghcr #

  11. "Tự host FastAPI dễ dàng với image GHCR & notes release. CI tự động kiểm tra, GHCR host image, release tự sinh. Hỗ trợ Postgres, Sentry. 🚀 #FastAPI #GHCR #SelfHosting #VietnameseTech"

    reddit.com/r/selfhosted/commen

  12. Harbor: Docker Registry на своём сервере

    В одной из предыдущих статей, а именно в «Применение Portainer в CI/CD процессах» , мы разобрались, что такое сборка Docker-образов и какие существуют варианты их хранения. В том примере использовался GitHub Docker Registry, а в своей работе я применяю хранилище в собственном Git-хостинге на базе Gitea. Альтернативой хранению образов рядом с кодом является самостоятельный (self-hosted) репозиторий образов, например Harbor. В этой статье мы разберём, что такое Harbor, как установить его на свой сервер и как начать им пользоваться. Если вам нравятся подобные материалы, подписывайтесь на наш Telegram-канал «Код на салфетке» !

    habr.com/ru/articles/937168/

    #cicd #harbor #ghcr #docker_registry #Github_Container_registry #Сборка_Docker_образа #Docker_образ #selfhosted #open_source

  13. Harbor: Docker Registry на своём сервере

    В одной из предыдущих статей, а именно в «Применение Portainer в CI/CD процессах» , мы разобрались, что такое сборка Docker-образов и какие существуют варианты их хранения. В том примере использовался GitHub Docker Registry, а в своей работе я применяю хранилище в собственном Git-хостинге на базе Gitea. Альтернативой хранению образов рядом с кодом является самостоятельный (self-hosted) репозиторий образов, например Harbor. В этой статье мы разберём, что такое Harbor, как установить его на свой сервер и как начать им пользоваться. Если вам нравятся подобные материалы, подписывайтесь на наш Telegram-канал «Код на салфетке» !

    habr.com/ru/articles/937168/

    #cicd #harbor #ghcr #docker_registry #Github_Container_registry #Сборка_Docker_образа #Docker_образ #selfhosted #open_source

  14. Harbor: Docker Registry на своём сервере

    В одной из предыдущих статей, а именно в «Применение Portainer в CI/CD процессах» , мы разобрались, что такое сборка Docker-образов и какие существуют варианты их хранения. В том примере использовался GitHub Docker Registry, а в своей работе я применяю хранилище в собственном Git-хостинге на базе Gitea. Альтернативой хранению образов рядом с кодом является самостоятельный (self-hosted) репозиторий образов, например Harbor. В этой статье мы разберём, что такое Harbor, как установить его на свой сервер и как начать им пользоваться. Если вам нравятся подобные материалы, подписывайтесь на наш Telegram-канал «Код на салфетке» !

    habr.com/ru/articles/937168/

    #cicd #harbor #ghcr #docker_registry #Github_Container_registry #Сборка_Docker_образа #Docker_образ #selfhosted #open_source

  15. Harbor: Docker Registry на своём сервере

    В одной из предыдущих статей, а именно в «Применение Portainer в CI/CD процессах» , мы разобрались, что такое сборка Docker-образов и какие существуют варианты их хранения. В том примере использовался GitHub Docker Registry, а в своей работе я применяю хранилище в собственном Git-хостинге на базе Gitea. Альтернативой хранению образов рядом с кодом является самостоятельный (self-hosted) репозиторий образов, например Harbor. В этой статье мы разберём, что такое Harbor, как установить его на свой сервер и как начать им пользоваться. Если вам нравятся подобные материалы, подписывайтесь на наш Telegram-канал «Код на салфетке» !

    habr.com/ru/articles/937168/

    #cicd #harbor #ghcr #docker_registry #Github_Container_registry #Сборка_Docker_образа #Docker_образ #selfhosted #open_source

  16. Применение Portainer в CI/CD процессах

    Продолжаем знакомиться с Portainer и сферами его применения. В этой статье узнаем как написать CI/CD для сборки Docker-образа и деплоя проекта, а также, как получить бесплатно Portainer BE.

    habr.com/ru/articles/934892/

    #Portainer #DevOps #деплой_проекта #cicd #workflow #ghcr #Реестр_образов

  17. Применение Portainer в CI/CD процессах

    Продолжаем знакомиться с Portainer и сферами его применения. В этой статье узнаем как написать CI/CD для сборки Docker-образа и деплоя проекта, а также, как получить бесплатно Portainer BE.

    habr.com/ru/articles/934892/

    #Portainer #DevOps #деплой_проекта #cicd #workflow #ghcr #Реестр_образов

  18. Применение Portainer в CI/CD процессах

    Продолжаем знакомиться с Portainer и сферами его применения. В этой статье узнаем как написать CI/CD для сборки Docker-образа и деплоя проекта, а также, как получить бесплатно Portainer BE.

    habr.com/ru/articles/934892/

    #Portainer #DevOps #деплой_проекта #cicd #workflow #ghcr #Реестр_образов

  19. Применение Portainer в CI/CD процессах

    Продолжаем знакомиться с Portainer и сферами его применения. В этой статье узнаем как написать CI/CD для сборки Docker-образа и деплоя проекта, а также, как получить бесплатно Portainer BE.

    habr.com/ru/articles/934892/

    #Portainer #DevOps #деплой_проекта #cicd #workflow #ghcr #Реестр_образов

  20. TIL; That ghcr.io (Github Package Registry) doesn't even support IPv6. What year is this?

    #ipv6 #github #ghcr #til

  21. TIL; That ghcr.io (Github Package Registry) doesn't even support IPv6. What year is this?

    #ipv6 #github #ghcr #til

  22. TIL; That ghcr.io (Github Package Registry) doesn't even support IPv6. What year is this?

    #ipv6 #github #ghcr #til

  23. TIL; That ghcr.io (Github Package Registry) doesn't even support IPv6. What year is this?

    #ipv6 #github #ghcr #til

  24. TIL; That ghcr.io (Github Package Registry) doesn't even support IPv6. What year is this?

    #ipv6 #github #ghcr #til

  25. Apparently asking about GitHub doesn't count as a question about "software tools primarily used by programmers" on #StackOverflow even though I created it there specifically because it's where other #GitHub questions seemed to be.

    🙄

    So anyone know what happens when you delete the GitHub repository that a #ghcr package repository is attached to? I can't really find good docs on what happens in this case.

    stackoverflow.com/questions/79

  26. Apparently asking about GitHub doesn't count as a question about "software tools primarily used by programmers" on #StackOverflow even though I created it there specifically because it's where other #GitHub questions seemed to be.

    🙄

    So anyone know what happens when you delete the GitHub repository that a #ghcr package repository is attached to? I can't really find good docs on what happens in this case.

    stackoverflow.com/questions/79

  27. Apparently asking about GitHub doesn't count as a question about "software tools primarily used by programmers" on #StackOverflow even though I created it there specifically because it's where other #GitHub questions seemed to be.

    🙄

    So anyone know what happens when you delete the GitHub repository that a #ghcr package repository is attached to? I can't really find good docs on what happens in this case.

    stackoverflow.com/questions/79

  28. Apparently asking about GitHub doesn't count as a question about "software tools primarily used by programmers" on #StackOverflow even though I created it there specifically because it's where other #GitHub questions seemed to be.

    🙄

    So anyone know what happens when you delete the GitHub repository that a #ghcr package repository is attached to? I can't really find good docs on what happens in this case.

    stackoverflow.com/questions/79

  29. Apparently asking about GitHub doesn't count as a question about "software tools primarily used by programmers" on #StackOverflow even though I created it there specifically because it's where other #GitHub questions seemed to be.

    🙄

    So anyone know what happens when you delete the GitHub repository that a #ghcr package repository is attached to? I can't really find good docs on what happens in this case.

    stackoverflow.com/questions/79

  30. A lot of people seem to be hit by #GitHub's (#GHCR) rate limit when scanning images with #trivy.

    As it occurs even when logged in and even when pulling the image itself (i.e. not only for the database), my guess is that it is a global rate limit on the GHCR repo aquasecurity (ghcr.io/aquasecurity)

    Here are some pointers:

    github.com/aquasecurity/trivy/

    github.com/orgs/community/disc

  31. A lot of people seem to be hit by #GitHub's (#GHCR) rate limit when scanning images with #trivy.

    As it occurs even when logged in and even when pulling the image itself (i.e. not only for the database), my guess is that it is a global rate limit on the GHCR repo aquasecurity (ghcr.io/aquasecurity)

    Here are some pointers:

    github.com/aquasecurity/trivy/

    github.com/orgs/community/disc

  32. A lot of people seem to be hit by #GitHub's (#GHCR) rate limit when scanning images with #trivy.

    As it occurs even when logged in and even when pulling the image itself (i.e. not only for the database), my guess is that it is a global rate limit on the GHCR repo aquasecurity (ghcr.io/aquasecurity)

    Here are some pointers:

    github.com/aquasecurity/trivy/

    github.com/orgs/community/disc

  33. A lot of people seem to be hit by #GitHub's (#GHCR) rate limit when scanning images with #trivy.

    As it occurs even when logged in and even when pulling the image itself (i.e. not only for the database), my guess is that it is a global rate limit on the GHCR repo aquasecurity (ghcr.io/aquasecurity)

    Here are some pointers:

    github.com/aquasecurity/trivy/

    github.com/orgs/community/disc

  34. A lot of people seem to be hit by #GitHub's (#GHCR) rate limit when scanning images with #trivy.

    As it occurs even when logged in and even when pulling the image itself (i.e. not only for the database), my guess is that it is a global rate limit on the GHCR repo aquasecurity (ghcr.io/aquasecurity)

    Here are some pointers:

    github.com/aquasecurity/trivy/

    github.com/orgs/community/disc

  35. I have to say that I am totally puzzled by the #GitHub permission model - if the token has read/write access to content, then why it cannot push #container images to #GHCR?

  36. I have to say that I am totally puzzled by the #GitHub permission model - if the token has read/write access to content, then why it cannot push #container images to #GHCR?

  37. I have to say that I am totally puzzled by the #GitHub permission model - if the token has read/write access to content, then why it cannot push #container images to #GHCR?

  38. I have to say that I am totally puzzled by the #GitHub permission model - if the token has read/write access to content, then why it cannot push #container images to #GHCR?