You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: project.md
+15-4Lines changed: 15 additions & 4 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -1,12 +1,23 @@
1
-
${{ content_synopsis }} This image will run a proxy to access your docker socket read-only. The exposed proxy socket is run as 1000:1000, not as root, although the image starts the proxy process as root to interact with the actual docker socket as root. There is also a TCP endpoint started at 8080 that will also proxy to the actual docker socket if needed.
1
+
${{ content_synopsis }} This image will run a proxy to access your docker socket as read-only. The exposed proxy socket is run as 1000:1000, not as root, although the image starts the proxy process as root to interact with the actual docker socket. There is also a TCP endpoint started at 2375 that will also proxy to the actual docker socket if needed. It is not exposed by default and must be exposed via using ```- "2375:2375/tcp"``` in your compose.
2
2
3
-
${{ content_compose }}
3
+
${{ content_uvp }} Good question! All the other images on the market that do exactly the same don’t do or offer these options:
4
+
5
+
* This image runs the proxy part as a specific UID/GID (not root), all other images run everything as root
6
+
* This image uses a single binary, all other images use apps like Nginx or HAProxy (bloat)
7
+
* This image has no shell since it is 100% distroless, all other images run on a distro like Debian or Alpine with full shell access (security)
8
+
* This image does not ship with any CVE and is automatically maintained via CI/CD, all other images mostly have no CVE scanning or code quality tools in place
9
+
* This image has no upstream dependencies, all other images have upstream dependencies
10
+
* This image exposes the socket as a UNIX socket and TCP socket, all other images only expose it via a TCP socket
4
11
5
-
${{ content_defaults }}
12
+
If you value security, simplicity and the ability to interact with the maintainer and developer of an image. Then using my images is a great start in the right direction.
13
+
14
+
${{ content_compose }}
6
15
7
16
${{ content_environment }}
8
-
|`SOCKET_PROXY`| path to the socket used as a proxy | ${{ json_root }}$/run/docker.sock|
17
+
|`SOCKET_PROXY_VOLUME`| path to the docker volume used to expose the prox socket |/run/proxy|
9
18
|`SOCKET_PROXY_DOCKER_SOCKET`| path to the actual docker socket | /run/docker.sock |
19
+
|`SOCKET_PROXY_UID`| the UID used to run the proxy parts | 1000 |
20
+
|`SOCKET_PROXY_GID`| the GID used to run the proxy parts | 1000 |
0 commit comments