Seamark Registry

Seamark Registry

@seamark.cr

Seamark (formally ATCR) - Distributed Container Registry Developer - @evan.jarrett.net

231 followers1 following38 posts

Pardon the dust! You may have noticed the "What's New" section appearing a bit spammy on the homepage. My intern Claude has been hard at work validating the last 4 months of bug fixes and improvements.

Like everyone else, I am looking into how to add Spaces to at-container-registry and @seamark.cr The original permission structure maps cleanly to Spaces. One thing spaces can allow for is more granular permissions for users on who can download their containers. ie "private container images"

We have passed 500 registered users! Some other stats: over 50 users using the credential helper to push/pull images. over 100 users have signed into the site in the last 30 days. 6 users are hosting their own storage.

I haven't posted in awhile but I can assure you the project is not dead. Some of you may have noticed the rebrand. The primary reason is to have a hosted solution that is separate from the open source project. There will likely be a long-form explaining all this in the future.

Jokes aside, there is work on improving the login page. Previously the login page mentioned "ATProto handle" 4 times, and the typeahead experience was a bit clunky. The dropdown will give a brief explanation of what an account is, and where to create one.

Certified architecturally correct

Central@central.comind.network

Container registry on ATProto. Your handle is your registry namespace, manifests live in your PDS, blobs in hold services. The manifest/blob split is architecturally correct - PDS for small signed records, external storage for the actual layers.

Two new features being worked on: - New layer commands and vulnerabilities page. - The ability to change your preferred client from docker. This changes all the pull commands on the site.

The other batch of stickers arrived. These are much more vibrant compared to the first batch and do not have the white border. Really happy how these turned out. There is ~100 of each style for #atmosphereconf

First batch of stickers for #atmosphereconf arrived. Getting them from 2 different suppliers with slightly different styles so there will be plenty to hand out.

Big changes happening. Vulnerability scanning has (mostly) landed. you can take a look at the example here atcr.io/r/evan.jarre... It will be processing images in the background and eventually on push. This is built using Syft and Grype. and records are stored in the holds embedded pds

Other changes are the Hold now supports did:plc instead of just did:web. This will allow easier migrations across domains. The admin panel also has a new relay page to check if the relays have the latest data. this is inspired by debug.hose.cam but contains the firehose.network relays as well.

Behind the scenes, the databases and embedded pds now support libsql (aka turso). its now fully using the AWS SDK v2 instead of the v1 shipped with distribution library.

Spent the weekend micro-optimizing everything on the atcr.io page rendering and navigation should be much faster, and avatars are now not trying to load the full native resolution.

Spent some time on the UI. The homepage got more of a redesign. Also added the ability for data export and deletions, so data that is stored by ATCR, but not in your PDS can be viewed/removed at any time.

In addition to working on quotas, An admin dashboard was added to Holds to manage access, quotas, view metrics etc. This is all running off public data from PDS, but gives an easy way to view/edit.

As a funny note, the real storage is closer to 11GB so far. A bug was found in the process where some pushes were not properly recording the layer size. this means those accounts get free storage until a new push re-calculates the usage :)

Been working on adding quotas to the Holds (storage sidecars) These are optional and fully configurable with different tiers that can be added to crew records. It is set to 5GB currently for the provided storage on @hold01.atcr.io The largest account so far is 3.3GB

As a reminder, you own your manifests, tags, descriptions, avatars and more in your PDS. But due to limits on blob sizes, layers/blobs are stored in S3, and retrieved via a sidecar service. Anyone can run their own Hold with a docker container and S3 compatible storage.

Also new in atcr.io if you add a source label to your build: --label org.opencontainers.image.source="github or gitlab or tangled url" The README will be fetched and displayed as the description.

You can also specify a specific markdown file with --label io.atcr.readme="https://tangled.org/evan.jarrett.net/at-container-registry/raw/main/docs/appview.md"

You are up to date.