[Faile!!]Docker, cron, mail and logs

F……………………………………………………………………………….. https://www.preining.info/blog/2018/05/docker-cron-mail-and-logs/ from debian:stretch-slim RUN apt-get -y update RUN apt-get install -y cron #ssmtp ADD . /app ADD crontab /etc/cron.d/mypackage RUN chmod 0644 /etc/cron.d/mypackage #ADD ssmtp.conf /etc/ssmtp/ssmtp.conf #RUN chown root.mail /etc/ssmtp/ssmtp.conf #RUN chmod 0640 /etc/ssmtp/ssmtp.conf CMD cron -f ===== docker-compose.yml version: '3.3' services: gethpeers: build: context: gethpeers/ volumes: - cronlog:/app/cronapplog:rw networks: - fastdev fakelog: build: context: fakelog/ volumes: - cronlog:/app/cronapplog:rw - filebeat:/usr/share/filebeat/data:rw networks: - fastdev volumes: cronlog: filebeat: networks: fastdev: driver: bridge gethpeers Dockerfile from debian:stretch-slim RUN apt-get -y update RUN apt-get install -y cron #ssmtp ADD . /app ADD crontab /etc/cron.d/mypackage RUN chmod 0644 /etc/cron.d/mypackage #ADD ssmtp.conf /etc/ssmtp/ssmtp.conf #RUN chown root.mail /etc/ssmtp/ssmtp.conf #RUN chmod 0640 /etc/ssmtp/ssmtp.conf CMD cron -f gethpeers crontab * * * * * root /app/run-cronjob /app/start.sh gethpeers run-cronjob #!/bin/bash if [ -z "$1" ] ; then echo "need name of cron job as first argument" >&2 exit 1 fi if [ ! -x "$1" ] ; then echo "cron job file $1 not executable, exiting" >&2 exit 1 fi if "$1" then exit 0 else echo "cron job $1 failed!" 2>/proc/1/fd/2 >&2 exit 1 fi gethpeers start.sh #!/bin/bash IP_PORT=xxx.xxx.xxx.xxx:8545 ETH_METHOD=admin_peers PEERS=$(curl -X POST -H "Content-Type: application/json" --data '{"jsonrpc":"2.0","method":"'$ETH_METHOD'","params":[],"id":1}' $IP_PORT | jq '.result[].network + {"project":"cronapp"}') printf "\n===== Now Geth Peers =====\n" printf "Peers: %s\n" $PEERS echo $PEERS >> /app/cronapplog/gethpeers.log fakelog Dockerfile FROM docker.elastic.co/beats/filebeat:6.5.4 COPY filebeat.yml /usr/share/filebeat/filebeat.yml USER root RUN chown root:filebeat /usr/share/filebeat/filebeat.yml USER filebeat fakelog filebeat.yml filebeat.prospectors: - type: log paths: - /app/cronapplog/gethpeers.log exclude_files: ['.gz$'] fields: srcname: "geth" srctype: "cron" filebeatserverip: "xxx.xxx.xxx.xxx" fields_under_root: true symlinks: true output.logstash: hosts: ["logstash:5044"]

2019-02-22 · 2 min · 252 words · Me

OpenFaas

https://github.com/openfaas/faas

2019-02-21 · 1 min · word · Me

[轉]"migrating" to Kubernetes from docker-compose in homelab

https://www.reddit.com/r/docker/comments/9j2vc7/migrating_to_kubernetes_from_dockercompose_in/ If / when you’re able to spawn arbitrary VMs, you can look at kubeadm, CoreOS, RKE (my current choice), and so on for cluster creation. Before you can use kompose, or use kubectl apply -f myawesome.yaml, you first and foremost need to set up a Kubernetes cluster. This might be the most challenging thing to do because Kubernetes is heavy-weight compared to docker-compose. I recommend using RKE to set it up. Also, run away if anyone mentions Kubespray. ...

2019-02-20 · 1 min · 82 words · Me

YAML multi-line string

https://rancher.com/docs/rke/v0.1.x/en/config-options/add-ons/user-defined-add-ons/ To define an add-on directly in the YAML file, make sure to use the YAML’s block indicator |- as the addons directive is a multi-line string option. It’s possible to specify multiple YAML resource definitions by separating them using the -– directive.

2019-02-20 · 1 min · 43 words · Me

k8s kubernetes Lesson 2 yaml

https://kubernetes.github.io/ingress-nginx/examples/docker-registry/ https://sueboy.blogspot.com/2019/11/kubernetes-nodeport.html PS:Close basic auth just remark configmap.yml auth: #auth: # htpasswd: # realm: basic-realm # path: /auth/htpasswd README.md # Docker Registry K8s Domain:docker-registry Port:30500 /etc/hosts add 192.168.99.118 docker-registry ## ip is k8s host eth2's ip Finish command: docker login -u username -p password docker-registry:30500 [![](https://3.bp.blogspot.com/-Wj82n6nvHkw/XHUVI-gNy7I/AAAAAAAAUE8/rs1l8mQuu8cKvkoMcZGn0lOfJUWY3udMgCLcBGAs/s640/dockerloginsuccess.jpg)](https://3.bp.blogspot.com/-Wj82n6nvHkw/XHUVI-gNy7I/AAAAAAAAUE8/rs1l8mQuu8cKvkoMcZGn0lOfJUWY3udMgCLcBGAs/s1600/dockerloginsuccess.jpg) https://docs.docker.com/registry/insecure/ Deploy a plain HTTP registry ---------------------------- ```bash /etc/docker/daemon.json { "insecure-registries" : ["docker-registry:30500"] } Restart Docker for the changes to take effect https://blog.csdn.net/zsd498537806/article/details/79290732 https://serverfault.com/questions/611120/failed-tls-handshake-does-not-contain-any-ip-sans http://dockone.io/article/684 #-subj “/C=/ST=/L=/O=/OU=/CN=192.168.99.118” -subj “/C=/ST=/L=/O=/OU=/CN=docker-registry” ...

2019-01-30 · 6 min · 1083 words · Me