relates to moby/moby#32507, moby/buildkit#442
Doing some silly experimenting with RUN --mount
:
# syntax=docker/dockerfile:1
FROM alpine AS stage1
# syntax = tonistiigi/dockerfile:runmount20180618 | |
# | |
# `RUN --mount` example. Requires Docker v18.06 with `DOCKER_BUILDKIT=1`. | |
# | |
# `RUN --mount=... apt install <PKGS>` should finish immediately even when some packages are added to <PKGS> or built with `docker build --no-cache`. | |
FROM ubuntu | |
RUN rm -f /etc/apt/apt.conf.d/docker-clean; echo 'Binary::apt::APT::Keep-Downloaded-Packages "true";' > /etc/apt/apt.conf.d/keep-cache | |
RUN --mount=type=cache,target=/var/cache/apt,sharing=locked --mount=type=cache,target=/var/lib/apt,sharing=locked \ | |
apt update && apt install -y gcc |
relates to moby/moby#32507, moby/buildkit#442
Doing some silly experimenting with RUN --mount
:
# syntax=docker/dockerfile:1
FROM alpine AS stage1
$ sudo sysctl net.bridge.bridge-nf-call-iptables=1 | |
$ sudo sysctl net.bridge.bridge-nf-call-ip6tables=1 |
Europe
This is a story about how I tried to use Go for scripting. In this story, I’ll discuss the need for a Go script, how we would expect it to behave and the possible implementations; During the discussion I’ll deep dive to scripts, shells, and shebangs. Finally, we’ll discuss solutions that will make Go scripts work.
While python and bash are popular scripting languages, C, C++ and Java are not used for scripts at all, and some languages are somewhere in between.
Create file /etc/systemd/system/[email protected]
. SystemD calling binaries using an absolute path. In my case is prefixed by /usr/local/bin
, you should use paths specific for your environment.
[Unit]
Description=%i service with docker compose
PartOf=docker.service
After=docker.service
Join the room #freenode_<#channel>:matrix.org
, replacing <#channel>
with the name of the IRC channel. For example, in order to join the #prometheus
IRC channel, join the room #freenode_#prometheus:matrix.org
on matrix.org.
In vector.im, rooms can be joined with the directory symbol on the bottom left.
curl
to get the JSON response for the latest releasegrep
to find the line containing file URLcut
and tr
to extract the URLwget
to download itcurl -s https://api.github.com/repos/jgm/pandoc/releases/latest \
| grep "browser_download_url.*deb" \
| cut -d : -f 2,3 \
| tr -d \" \
### default for all ## | |
Host * | |
ForwardAgent no | |
ForwardX11 no | |
ForwardX11Trusted yes | |
User nixcraft | |
Port 22 | |
Protocol 2 | |
ServerAliveInterval 60 | |
ServerAliveCountMax 30 |
(by @andrestaltz)
If you prefer to watch video tutorials with live-coding, then check out this series I recorded with the same contents as in this article: Egghead.io - Introduction to Reactive Programming.