update
This commit is contained in:
53
ops/Dockerfile
Normal file
53
ops/Dockerfile
Normal file
@@ -0,0 +1,53 @@
|
||||
ARG ARCH
|
||||
FROM harbor.colben.cn/general/jdk$ARCH:8
|
||||
MAINTAINER Colben colbenlee@gmail.com
|
||||
ADD --chown=root:root /ADD/ /opt/
|
||||
ENV MAVEN_HOME=/opt/maven
|
||||
ENV PATH=${MAVEN_HOME}/bin:$PATH
|
||||
RUN tdnf makecache \
|
||||
&& tdnf -y install git openssh-clients \
|
||||
&& mkdir -m 0600 /root/.ssh \
|
||||
&& echo '-----BEGIN OPENSSH PRIVATE KEY-----\n\
|
||||
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\n\
|
||||
-----END OPENSSH PRIVATE KEY-----\n\
|
||||
' > /root/.ssh/id_rsa \
|
||||
&& echo 'ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABgQC04I1mnqAoFTvfvHMzNJKlOEPEMELH0PmFDdE55bV6mz73EE1DqcHFZd/mUmcxtA8YtikDIJ+Ee2dK/uVRYJ19I/rxO3Mk/B+onl+ivH8p2VGzQowsCKyO+doNB6ogDBaBfK3QCx2byxhHtIdsF/2fgzIFf+qEGKYjh4ezEs11eJsxQxdrQbmnO02wuH3Ur6JBbLPi6XnFb2JMU7KpG2WOdf2pLpq2Td2Pl9OJBExOWaoB5XlgzuYFqySGxljj+6AFLszTuBEDXDHMNnnM1H67RehJVy7LF5806QYfEeTWo9mzFiWL85Ta9r/remUjPMJu5tEr/f4kwtwmwsvu25QahBULH8WifRN3qen1gOOGWJphSRCEWI5lsiHypMDoBNSZNFsBnbqQAXlxWoJ0u0ROSXgxheEF4xFFREv/Qq4QVqxkOAjJ/J6zAEdQ8bz/iNzK1B48HlWyapvf8MuLPZb5toSM8mhNu3LviwfOWl4ueP4oweGqjCs2f/jeMKr0gA8= root@ops\n\
|
||||
' > /root/.ssh/id_rsa.pub \
|
||||
&& chmod 0600 /root/.ssh/id_rsa \
|
||||
&& rm -rf /var/cache/tdnf
|
||||
|
9
ops/README.md
Normal file
9
ops/README.md
Normal file
@@ -0,0 +1,9 @@
|
||||
# 构建运维镜像
|
||||
|
||||
## 导入文件
|
||||
- [下载 apache-maven-$VERSION-bin.tar.gz](https://archive.apache.org/dist/maven/maven-3/)
|
||||
|
||||
## 定制
|
||||
- ops.sh: 构建 ops 镜像
|
||||
- 设置 maven 环境变量
|
||||
|
72
ops/ops.sh
Executable file
72
ops/ops.sh
Executable file
@@ -0,0 +1,72 @@
|
||||
#!/bin/bash
|
||||
|
||||
#=========================================
|
||||
# Author : colben
|
||||
#=========================================
|
||||
|
||||
set -euo pipefail
|
||||
export LANG=en_US.UTF-8
|
||||
trap Quit EXIT
|
||||
|
||||
[ 'x86_64' == "$(uname -m)" ] && ARCH='' || ARCH="-$(uname -m)"
|
||||
ROOT_DIR="$(cd $(dirname $0) && pwd)"
|
||||
IMAGE="harbor.colben.cn/general/ops$ARCH:latest"
|
||||
|
||||
if [ -t 0 ]; then
|
||||
function Print { echo -e "\033[36;1m$(date +'[%F %T]')\033[32;1m $*\033[0m"; }
|
||||
function Warn { echo -e "\033[36;1m$(date +'[%F %T]')\033[33;1m $*\033[0m"; }
|
||||
function Error { echo -e "\033[36;1m$(date +'[%F %T]')\033[31;1m $*\033[0m"; exit 1; }
|
||||
else
|
||||
function Print { echo -e "$(date +'[%F %T INFO]') $*"; }
|
||||
function Warn { echo -e "$(date +'[%F %T WARN]') $*"; }
|
||||
function Error { echo -e "$(date +'[%F %T ERROR]') $*"; exit 1; }
|
||||
fi
|
||||
|
||||
function Quit {
|
||||
local exitCode=$?
|
||||
[ 0 -ne $exitCode ] && Error Failed to build or push image!
|
||||
[ -z "${END:-}" ] && echo && Error Interrupted manually!
|
||||
Print Succeeded to build and push image.
|
||||
}
|
||||
|
||||
function YesOrNo {
|
||||
Warn $*
|
||||
local sw=
|
||||
while :; do
|
||||
read -p '(Yes/No/Quit) ' -n1 sw
|
||||
[[ "$sw" =~ ^Y|y$ ]] && echo && return 0
|
||||
[[ "$sw" =~ ^N|n$ ]] && echo && return 1
|
||||
[[ "$sw" =~ ^Q|q$ ]] && echo && exit 0
|
||||
[ -n "$sw" ] && echo
|
||||
done
|
||||
}
|
||||
|
||||
function Update {
|
||||
Warn Preparing maven ...
|
||||
cd $ROOT_DIR
|
||||
rm -rf ADD && mkdir ADD
|
||||
cd ADD
|
||||
tar zxf $(ls /release/RUNTIME/apache-maven-*-bin.tar.gz|tail -1)
|
||||
mv apache-maven-3.6.3 maven
|
||||
}
|
||||
|
||||
function Build {
|
||||
local yn
|
||||
cd $ROOT_DIR
|
||||
docker images --format='{{.Repository}}:{{.Tag}}' | grep "^$IMAGE$" \
|
||||
&& Warn Removing image $IMAGE ... \
|
||||
&& docker rmi $IMAGE
|
||||
Warn Building image: $IMAGE ...
|
||||
docker build --force-rm --build-arg ARCH="$ARCH" -t $IMAGE .
|
||||
YesOrNo Push image: $IMAGE? && docker push $IMAGE
|
||||
}
|
||||
|
||||
function Main {
|
||||
Update
|
||||
Build
|
||||
END=1
|
||||
}
|
||||
|
||||
# Start here
|
||||
Main
|
||||
|
Reference in New Issue
Block a user