Skip to content

Instantly share code, notes, and snippets.

View zerda's full-sized avatar

SilverFox zerda

  • Shanghai, China
View GitHub Profile
@zerda
zerda / Program.cs
Created July 30, 2019 16:25
Convert an RSA to JsonWebKey format
// nuget package reference with:
// - System.IdentityModel.Tokens.Jwt
using System;
using System.Security.Cryptography;
using Newtonsoft.Json;
using Microsoft.IdentityModel.Tokens;
static void Main(string[] args) {
var provider = new RSACryptoServiceProvider(2048);
var key = new RsaSecurityKey(provider.ExportParameters(true));
@zerda
zerda / kube-flannel.yml
Created October 31, 2018 21:44
Use aliyun registry instead of quay.io
# Copied from https://raw.githubusercontent.com/coreos/flannel/master/Documentation/kube-flannel.yml
---
kind: ClusterRole
apiVersion: rbac.authorization.k8s.io/v1beta1
metadata:
name: flannel
rules:
- apiGroups:
- ""
@zerda
zerda / backup-job.yml
Last active October 6, 2018 23:57
Backup etcd in Kubernetes
apiVersion: batch/v1beta1
kind: CronJob
metadata:
name: backup
namespace: kube-system
spec:
# activeDeadlineSeconds: 100
schedule: "0 */1 * * *"
jobTemplate:
spec:
@zerda
zerda / elasticsearch.yml
Last active October 6, 2018 10:33
Elasticsearch 4.6 minimal cluster in Kubernetes
#
# Copyright 2017-2018 The Jaeger Authors
#
# Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except
# in compliance with the License. You may obtain a copy of the License at
#
# http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software distributed under the License
# is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express
@zerda
zerda / RandomString.java
Created December 24, 2017 05:52
Create an random string in Java
import java.security.SecureRandom;
import java.util.Locale;
import java.util.Objects;
import java.util.Random;
/**
* Random String Generator.
*
* <code>new RandomString().nextString()</code>
@zerda
zerda / .gitlab-ci.yml
Last active August 8, 2023 07:52
Gitlab CI for ASP.Net Core project
stages:
- build
- publish
.build: &build_template
stage: build
image: microsoft/dotnet:2.1-sdk-alpine
cache:
key: "$CI_PROJECT_NAMESPACE-$CI_PROJECT_NAME"
paths:
@zerda
zerda / bash_completion.sh
Created May 28, 2017 08:15
Bash Completion Init Script
# Check for interactive bash and that we haven't already been sourced.
if [ -n "${BASH_VERSION-}" -a -n "${PS1-}" -a -z "${BASH_COMPLETION_COMPAT_DIR-}" ]; then
# Check for recent enough version of bash.
if [ ${BASH_VERSINFO[0]} -gt 4 ] || \
[ ${BASH_VERSINFO[0]} -eq 4 -a ${BASH_VERSINFO[1]} -ge 1 ]; then
[ -r "${XDG_CONFIG_HOME:-$HOME/.config}/bash_completion" ] && \
. "${XDG_CONFIG_HOME:-$HOME/.config}/bash_completion"
if shopt -q progcomp && [ -r /usr/share/bash-completion/bash_completion ]; then
# Source completion code.
@zerda
zerda / Dockerfile
Created April 12, 2017 09:11
Merge environment variables to Docker container files
FROM nginx:alpine
EXPOSE 80
RUN apk add --update --no-cache jq
ADD ./docker-entrypoint.sh /
ADD ./config.json ./index.html /usr/share/nginx/html/
ENV CONFIG_PATH=/usr/share/nginx/html/config.json
ENTRYPOINT ["/docker-entrypoint.sh"]
CMD ["nginx", "-g", "daemon off;"]
@zerda
zerda / elasticsearch.yaml
Created April 8, 2017 21:42
ELK in Kubernetes
apiVersion: extensions/v1beta1
kind: Deployment
metadata:
name: elasticsearch-logging
namespace: kube-system
labels:
k8s-app: elasticsearch-logging
spec:
replicas: 1
template:
@zerda
zerda / ami-clean.sh
Last active April 16, 2021 08:53 — forked from jdowning/ami-clean.sh
Script to clean up Ubuntu EC2 instance before packaging as an AMI
#!/bin/bash
# This script cleans up your EC2 instance before baking a new AMI.
# Run the following command in a root shell:
#
# wget -qO- https://gist.github.com/zerda/677b279f2b8888ed92c4c614790fe232/raw/ami-clean.sh | bash
function print_green {
echo -e "\e[32m${1}\e[0m"
}