Docker
toxiproxy
Our great sponsors
Docker | toxiproxy | |
---|---|---|
4 | 20 | |
3,001 | 8,981 | |
1.8% | 1.2% | |
6.2 | 8.6 | |
18 days ago | 3 days ago | |
Go | Go | |
Apache License 2.0 | MIT License |
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.
Docker
-
Dagger: a new way to build CI/CD pipelines
I'm not touching anything Docker anymore.
Here's the scenario: you're the unfortunate soul who received the first M1 as a new employee, and nothing Docker-related works. Cue multi-arch builds; what a rotten mess. I spent more than a week figuring out the careful orchestration that any build involving `docker manifest` needs. If you aren't within the very fine line that buildx assumes, good luck pal. How long has `docker manifest` been "experimental?" It's abandonware.
Then I decided it would be smart to point out that we don't sign our images, and so I had to figure out how to combine the `docker manifest` mess with `docker trust`, another piece of abandonware. Eventually I figured out that the way to do it was with notary[1], another (poorly documented) piece of abandonware. The new shiny thing is notation[2], which does exactly the same thing, but is nowhere near complete.
At least Google clearly signals that they are killing something, Docker just lets projects go quiet.
How long before this project lands up like the rest of them? Coincidentally, we were talking about decoupling our CI from proprietary CI, seeing this was a rollercoaster of emotions.
toxiproxy
-
Speedbump - a TCP proxy for simulating variable network latency
On the same vibes as https://github.com/Shopify/toxiproxy
-
Ask HN: How do I force network failures during development against remote APIs?
https://github.com/Shopify/toxiproxy is a perfect solution for that. I used it quite successfully years ago and it looks like it's still pretty active.
-
Is there a tool to control bandwidth for debugging purposes?
I also tried toxiproxy but it doesn’t support TLS which is also important to me.
Looking at the toxiproxy you mentioned, it seems like it should do what you want though? TLS is generally over TCP anyway, so it should still be able to throttle those connections - it just wont understand the encryption. I also saw a pull request for having it act as a TLS man-in-the-middle proxy: https://github.com/Shopify/toxiproxy/pull/270
That's unfortunate. My next idea was if you have a spare raspberry pi lying around, you could connect it to a wifi network, connect your Jetson to the raspberry via ethernet, and then setup routing rules on the raspberry to route packets between the wifi and ethernet interfaces, essentially using the raspberry pi to connect the jetson to the router, allowing the raspberry pi to be in the middle of all the traffic - then you could use tc to control the traffic on the raspberry pi... assuming tc works on the raspberry pi. Warning I haven't done this either, though I've had some interest in rigging up a raspberry pi this way for stuff similar to this. Looking at the toxiproxy you mentioned, it seems like it should do what you want? TLS is generally over TCP anyway, so it should still be able to throttle those connections - it just wont understand the encryption. I also saw a pull request for having it act as a TLS man-in-the-middle proxy: https://github.com/Shopify/toxiproxy/pull/270 But again, that would only be necessary if you need it to understand the encryption - SSL/TLS MITM proxies pretend to be t he site you are trying to connect to and even present a generated certificate which you will generally have to accept, which allows them to decrypt your connection and then they setup their own SSL/TLS connection to the actual site and proxy between them. Other popular SSL/TLS mitm proxies include mitmproxy and Zed Attack Proxy, but not sure if they have traffic shaping/controlling abilitiies.
-
Test Your Product on a Crappy Laptop
I've used toxiproxy [1] to imitate various network problems (slowness, lost packets, dropping connections, etc). It works pretty well, and is even amenable to running during functional / integration tests.
-
Simulate Slow internet and high Latency? (Satelite internet)
Might be overkill but we use https://github.com/Shopify/toxiproxy for doing all sorts of evil network simulations.
Shopify released a tool just a few days ago that I think could handle this. ToxiProxy
- A TCP proxy to simulate network and system conditions for chaos and resiliency testing
- Toxiproxy is a framework for simulating network conditions
What are some alternatives?
snap - The open telemetry framework
rkt
Juju - Universal Operator Lifecycle Manager (OLM) for Kubernetes operators, and operators for traditional Linux apps, with declarative integration between operators for automated microservice integration.
Postman - CLI tool for batch-sending email via any SMTP server.
Dokku - A docker-powered PaaS that helps you build and manage the lifecycle of applications
Seaweed File System - SeaweedFS is a fast distributed storage system for blobs, objects, files, and data lake, for billions of files! Blob store has O(1) disk seek, cloud tiering. Filer supports Cloud Drive, cross-DC active-active replication, Kubernetes, POSIX FUSE mount, S3 API, S3 Gateway, Hadoop, WebDAV, encryption, Erasure Coding. [Moved to: https://github.com/seaweedfs/seaweedfs]
Documize - Modern Confluence alternative designed for internal & external docs, built with Go + EmberJS
Hugo - The world’s fastest framework for building websites.
heka - DEPRECATED: Data collection and processing made easy.
Duplicacy - A new generation cloud backup tool
nes - NES emulator written in Go.