├── README.md ├── ant ├── Dockerfile ├── Dockerfile.1.9.4 ├── Dockerfile.1.9.4.jdk7 ├── demo │ ├── HelloWorld.java │ └── build.xml └── ivy │ ├── build.xml │ ├── ivy.xml │ ├── resources │ └── logback.xml │ ├── src │ └── com │ │ └── liumiao │ │ └── controller │ │ └── HelloController.java │ └── war │ ├── META-INF │ └── MANIFEST.MF │ ├── WEB-INF │ ├── mvc-dispatcher-servlet.xml │ ├── pages │ │ └── index.jsp │ └── web.xml │ └── resources │ └── theme1 │ └── css │ └── core.css ├── chatops ├── dingtalk │ └── robot │ │ └── demo_message_send.sh ├── send_message.sh └── wechat │ └── robot │ ├── demo_image_send.sh │ └── demo_message_send.sh ├── clamav └── install-clamav-in-centos.sh ├── containers ├── alpine │ ├── ab │ │ └── Dockerfile │ ├── angular │ │ ├── Dockerfile │ │ ├── Dockerfile.cli │ │ ├── Dockerfile.cli.8.3.21 │ │ └── demo │ │ │ ├── karma.conf.js │ │ │ ├── karma.conf.js.chromeheadless │ │ │ ├── karma.conf.js.origin │ │ │ ├── karma.conf.js.phantomjs │ │ │ └── karma.conf.js.runonce │ ├── ansible │ │ └── Dockerfile │ ├── clair │ │ └── Dockerfile │ ├── gcc │ │ ├── Dockerfile.8.3.0 │ │ └── Dockerfile.9.2.0 │ ├── golang │ │ └── Dockerfile.1.13.5 │ ├── jdk │ │ └── oracle │ │ │ ├── 12.0.1 │ │ │ └── Dockerfile │ │ │ ├── 7u79 │ │ │ └── Dockerfile │ │ │ ├── 8u201 │ │ │ └── Dockerfile │ │ │ └── lts-11.0.3 │ │ │ └── Dockerfile │ ├── jenkins │ │ ├── Dockerfile │ │ ├── Dockerfile.2.164.3 │ │ ├── Dockerfile.centos7.7.openjdk1.8.jenkins2.164.3 │ │ ├── Dockerfile_fleeto │ │ ├── README.md │ │ ├── config.xml │ │ ├── demo │ │ │ ├── freestyle │ │ │ │ └── config.xml │ │ │ ├── jenkinsfile │ │ │ │ └── single │ │ │ │ │ └── Jenkinsfile │ │ │ ├── node │ │ │ │ ├── json │ │ │ │ │ └── agent.json │ │ │ │ └── xml │ │ │ │ │ └── agent001.xml │ │ │ └── pipeline │ │ │ │ ├── docker │ │ │ │ ├── build │ │ │ │ │ ├── Dockerfile │ │ │ │ │ └── config.xml │ │ │ │ ├── deploy │ │ │ │ │ ├── Dockerfile │ │ │ │ │ └── config.xml │ │ │ │ ├── dockerfile │ │ │ │ │ ├── Dockerfile │ │ │ │ │ └── config.xml │ │ │ │ ├── multiple │ │ │ │ │ └── config.xml │ │ │ │ ├── registry │ │ │ │ │ ├── Dockerfile │ │ │ │ │ └── config.xml │ │ │ │ └── single │ │ │ │ │ └── config.xml │ │ │ │ ├── env │ │ │ │ └── config.xml │ │ │ │ ├── if │ │ │ │ └── config.xml │ │ │ │ ├── parallel │ │ │ │ └── config.xml │ │ │ │ ├── params │ │ │ │ └── config.xml │ │ │ │ ├── paramsall │ │ │ │ └── config.xml │ │ │ │ ├── post │ │ │ │ └── config.xml │ │ │ │ ├── sample1 │ │ │ │ └── config.xml │ │ │ │ ├── sample2 │ │ │ │ └── config.xml │ │ │ │ ├── stage │ │ │ │ └── config.xml │ │ │ │ ├── tools │ │ │ │ └── config.xml │ │ │ │ └── when │ │ │ │ └── config.xml │ │ ├── docker-compose.yml │ │ ├── hudson.plugins.sonar.SonarRunnerInstallation.xml │ │ ├── hudson.tasks.Maven.xml │ │ ├── init.groovy │ │ ├── init_csrf.groovy │ │ ├── init_csrf_disable.groovy │ │ ├── init_login.groovy │ │ ├── install-plugins.sh │ │ ├── jenkins-support │ │ ├── jenkins.sh │ │ ├── mgnt_jenkins_demo.sh │ │ ├── plugins.sh │ │ ├── plugins.txt │ │ └── sample │ │ │ ├── jenkinsfileprj │ │ │ └── Jenkinsfile │ │ │ ├── master │ │ │ └── docker-compose.yml │ │ │ └── slave │ │ │ └── docker-compose.yml │ ├── jmeter │ │ ├── Dockerfile │ │ └── entrypoint.sh │ ├── jre │ │ └── Dockerfile │ ├── maria │ │ ├── Dockerfile │ │ ├── README.md │ │ └── init_mysql.sh │ ├── maven │ │ ├── Dockerfile │ │ ├── Dockerfile.ora7u79.mvn3.2.5 │ │ ├── Dockerfile.ora8u201.mvn3.2.5 │ │ ├── demo │ │ │ ├── JavaFXButton │ │ │ │ ├── pom.xml │ │ │ │ └── src │ │ │ │ │ └── main │ │ │ │ │ └── java │ │ │ │ │ └── com │ │ │ │ │ └── liumiaocn │ │ │ │ │ └── javademo │ │ │ │ │ └── Main.java │ │ │ ├── JavaFXSample │ │ │ │ ├── pom-jar.xml │ │ │ │ ├── pom.xml │ │ │ │ └── src │ │ │ │ │ └── main │ │ │ │ │ ├── java │ │ │ │ │ └── com │ │ │ │ │ │ └── liumiaocn │ │ │ │ │ │ └── javademo │ │ │ │ │ │ ├── Controller.java │ │ │ │ │ │ └── Main.java │ │ │ │ │ └── resources │ │ │ │ │ └── fxml │ │ │ │ │ └── sample.fxml │ │ │ └── multibytes │ │ │ │ ├── pom.xml │ │ │ │ └── src │ │ │ │ └── main │ │ │ │ └── webapp │ │ │ │ ├── WEB-INF │ │ │ │ ├── test │ │ │ │ │ ├── 测试用例模版.robot │ │ │ │ │ ├── 测试用例集模版.robot │ │ │ │ │ └── 测试结果报告模版.html │ │ │ │ └── web.xml │ │ │ │ └── index.html │ │ ├── mvn-entrypoint.sh │ │ └── settings-docker.xml │ ├── nginx │ │ ├── Dockerfile │ │ ├── create_https_certs.sh │ │ └── default.conf │ ├── nodejs │ │ ├── Dockerfile │ │ └── Dockerfile.8.6.0 │ ├── redmine │ │ ├── Dockerfile │ │ ├── Dockerfile.3.4.11 │ │ ├── Dockerfile.4.0.0 │ │ ├── README.md │ │ ├── docker-compose.yml │ │ ├── docker-compose.yml.mysql5.7 │ │ ├── docker-entrypoint.sh │ │ └── themes.tar.gz │ ├── robot │ │ ├── Dockerfile │ │ ├── run.sh │ │ └── webdemo │ │ │ ├── Dockerfile │ │ │ ├── html │ │ │ ├── demo.css │ │ │ ├── error.html │ │ │ ├── index.html │ │ │ └── welcome.html │ │ │ └── server.py │ ├── sonar │ │ ├── Dockerfile.6.7.1 │ │ ├── Dockerfile.7.0 │ │ ├── Dockerfile.7.1 │ │ ├── Dockerfile.7.9 │ │ ├── Dockerfile.7.9.1 │ │ ├── Dockerfile.8.0 │ │ ├── DockerfileSonarqube.5.6.5 │ │ ├── README.md │ │ ├── docker-compose.6.7.yml │ │ ├── docker-compose.7.9.1.yml │ │ ├── docker-compose.7.9.1.yml.1 │ │ ├── docker-compose.8.0.yml │ │ ├── docker-compose.yml │ │ ├── profile │ │ │ └── 5.6.5 │ │ │ │ └── java │ │ │ │ ├── java-sonarway-all.xml │ │ │ │ ├── java-sonarway-bug.xml │ │ │ │ ├── java-sonarway-codesmell.xml │ │ │ │ └── java-sonarway-vulnerability.xml │ │ ├── run.SONARQUBE.5.6.5.sh │ │ ├── run.SONARQUBE.6.7.1.sh │ │ ├── run.SONARQUBE.7.0.sh │ │ ├── run.SONARQUBE.7.1.sh │ │ ├── run.sh │ │ └── sonarules2csv.sh │ ├── svn │ │ ├── Dockerfile │ │ └── README.md │ ├── tomcat │ │ └── Dockerfile │ └── tornado │ │ ├── Dockerfile │ │ ├── Dockerfile.greeting │ │ ├── daemon-greeting.py │ │ └── daemon.py └── standard │ ├── android │ ├── Demo │ │ ├── Demo.iml │ │ ├── app │ │ │ ├── .DS_Store │ │ │ ├── .gitignore │ │ │ ├── app.iml │ │ │ ├── build.gradle │ │ │ ├── proguard-rules.pro │ │ │ └── src │ │ │ │ ├── androidTest │ │ │ │ └── java │ │ │ │ │ └── com │ │ │ │ │ └── liumiao │ │ │ │ │ └── dmo │ │ │ │ │ └── ExampleInstrumentedTest.java │ │ │ │ ├── main │ │ │ │ ├── AndroidManifest.xml │ │ │ │ ├── java │ │ │ │ │ └── com │ │ │ │ │ │ └── liumiao │ │ │ │ │ │ └── dmo │ │ │ │ │ │ └── MainActivity.java │ │ │ │ └── res │ │ │ │ │ ├── drawable-v24 │ │ │ │ │ └── ic_launcher_foreground.xml │ │ │ │ │ ├── drawable │ │ │ │ │ └── ic_launcher_background.xml │ │ │ │ │ ├── layout │ │ │ │ │ ├── activity_main.xml │ │ │ │ │ └── content_main.xml │ │ │ │ │ ├── menu │ │ │ │ │ └── menu_main.xml │ │ │ │ │ ├── mipmap-anydpi-v26 │ │ │ │ │ ├── ic_launcher.xml │ │ │ │ │ └── ic_launcher_round.xml │ │ │ │ │ ├── mipmap-hdpi │ │ │ │ │ ├── ic_launcher.png │ │ │ │ │ └── ic_launcher_round.png │ │ │ │ │ ├── mipmap-mdpi │ │ │ │ │ ├── ic_launcher.png │ │ │ │ │ └── ic_launcher_round.png │ │ │ │ │ ├── mipmap-xhdpi │ │ │ │ │ ├── ic_launcher.png │ │ │ │ │ └── ic_launcher_round.png │ │ │ │ │ ├── mipmap-xxhdpi │ │ │ │ │ ├── ic_launcher.png │ │ │ │ │ └── ic_launcher_round.png │ │ │ │ │ ├── mipmap-xxxhdpi │ │ │ │ │ ├── ic_launcher.png │ │ │ │ │ └── ic_launcher_round.png │ │ │ │ │ └── values │ │ │ │ │ ├── colors.xml │ │ │ │ │ ├── dimens.xml │ │ │ │ │ ├── strings.xml │ │ │ │ │ └── styles.xml │ │ │ │ └── test │ │ │ │ └── java │ │ │ │ └── com │ │ │ │ └── liumiao │ │ │ │ └── dmo │ │ │ │ └── ExampleUnitTest.java │ │ ├── build.gradle │ │ ├── gradle.properties │ │ ├── gradle │ │ │ └── wrapper │ │ │ │ ├── gradle-wrapper.jar │ │ │ │ └── gradle-wrapper.properties │ │ ├── gradlew │ │ ├── gradlew.bat │ │ ├── keyReleaseV2.jks │ │ ├── local.properties │ │ └── settings.gradle │ ├── Dockerfile.gradle │ ├── Dockerfile.gradlew │ └── Dockerfile.sdk │ ├── artifactory │ └── Dockerfile │ ├── caffe │ └── Dockerfile │ ├── clair │ ├── clair_config │ │ └── config.yaml │ └── docker-compose.yml │ ├── clairctl │ ├── data │ │ └── clair │ │ │ └── config │ │ │ └── config.yml │ ├── docker-compose.yml │ └── image │ │ ├── Dockerfile │ │ ├── Dockerfile.std │ │ └── clairctl.yml │ ├── clamav │ ├── Dockerfile │ └── Dockerfile.0.100.0 │ ├── elk │ ├── cerebro │ │ ├── Dockerfile.0.8.1 │ │ └── docker-compose.yml │ ├── elasticsearch │ │ ├── Dockerfile.6.4.0 │ │ └── docker-compose.yml │ ├── kibana │ │ ├── Dockerfile.6.4.0 │ │ ├── docker-compose.yml │ │ └── kibana.yml │ └── logstash │ │ ├── Dockerfile.6.4.0 │ │ ├── docker-compose.yml │ │ ├── logstash.conf │ │ └── logstash.yml │ ├── g++ │ └── demo │ │ └── src │ │ └── main.c │ ├── gcc │ └── demo │ │ └── src │ │ └── main.c │ ├── gitlab │ ├── Dockerfile │ └── README.md │ ├── gradle │ ├── Dockerfile.6.0.1 │ └── demo │ │ ├── hello │ │ ├── .gradle │ │ │ ├── 4.10.2 │ │ │ │ ├── fileChanges │ │ │ │ │ └── last-build.bin │ │ │ │ ├── fileHashes │ │ │ │ │ ├── fileHashes.bin │ │ │ │ │ └── fileHashes.lock │ │ │ │ ├── gc.properties │ │ │ │ └── taskHistory │ │ │ │ │ ├── taskHistory.bin │ │ │ │ │ └── taskHistory.lock │ │ │ ├── buildOutputCleanup │ │ │ │ ├── buildOutputCleanup.lock │ │ │ │ ├── cache.properties │ │ │ │ └── outputFiles.bin │ │ │ └── vcs-1 │ │ │ │ └── gc.properties │ │ ├── build.gradle │ │ ├── settings.gradle │ │ ├── subProjectA │ │ │ ├── build.gradle │ │ │ └── subProjectAA │ │ │ │ └── build.gradle │ │ └── subProjectB │ │ │ └── build.gradle │ │ ├── init │ │ ├── .gradle │ │ │ ├── 4.10.2 │ │ │ │ ├── fileChanges │ │ │ │ │ └── last-build.bin │ │ │ │ ├── fileHashes │ │ │ │ │ ├── fileHashes.bin │ │ │ │ │ └── fileHashes.lock │ │ │ │ ├── gc.properties │ │ │ │ └── taskHistory │ │ │ │ │ ├── taskHistory.bin │ │ │ │ │ └── taskHistory.lock │ │ │ └── buildOutputCleanup │ │ │ │ ├── buildOutputCleanup.lock │ │ │ │ ├── cache.properties │ │ │ │ └── outputFiles.bin │ │ ├── build.gradle │ │ ├── gradle │ │ │ └── wrapper │ │ │ │ ├── gradle-wrapper.jar │ │ │ │ └── gradle-wrapper.properties │ │ ├── gradlew │ │ ├── gradlew.bat │ │ └── settings.gradle │ │ ├── jar │ │ ├── .gradle │ │ │ ├── 6.0.1 │ │ │ │ ├── executionHistory │ │ │ │ │ ├── executionHistory.bin │ │ │ │ │ └── executionHistory.lock │ │ │ │ ├── fileChanges │ │ │ │ │ └── last-build.bin │ │ │ │ ├── fileContent │ │ │ │ │ └── fileContent.lock │ │ │ │ ├── fileHashes │ │ │ │ │ ├── fileHashes.bin │ │ │ │ │ └── fileHashes.lock │ │ │ │ ├── gc.properties │ │ │ │ └── javaCompile │ │ │ │ │ ├── javaCompile.lock │ │ │ │ │ └── taskHistory.bin │ │ │ ├── buildOutputCleanup │ │ │ │ ├── buildOutputCleanup.lock │ │ │ │ ├── cache.properties │ │ │ │ └── outputFiles.bin │ │ │ └── vcs-1 │ │ │ │ └── gc.properties │ │ ├── build.gradle │ │ ├── settings.gradle │ │ └── src │ │ │ └── main │ │ │ ├── java │ │ │ └── com │ │ │ │ └── liumiaocn │ │ │ │ └── HelloPlugin.java │ │ │ └── resources │ │ │ └── com │ │ │ └── liumiaocn │ │ │ └── resource.xml │ │ ├── kotlin │ │ ├── .gradle │ │ │ ├── 4.10.2 │ │ │ │ ├── fileChanges │ │ │ │ │ └── last-build.bin │ │ │ │ ├── fileHashes │ │ │ │ │ ├── fileHashes.bin │ │ │ │ │ └── fileHashes.lock │ │ │ │ ├── gc.properties │ │ │ │ └── taskHistory │ │ │ │ │ ├── taskHistory.bin │ │ │ │ │ └── taskHistory.lock │ │ │ ├── buildOutputCleanup │ │ │ │ ├── buildOutputCleanup.lock │ │ │ │ ├── cache.properties │ │ │ │ └── outputFiles.bin │ │ │ └── vcs-1 │ │ │ │ └── gc.properties │ │ ├── build.gradle.kts │ │ ├── gradle │ │ │ └── wrapper │ │ │ │ ├── gradle-wrapper.jar │ │ │ │ └── gradle-wrapper.properties │ │ ├── gradlew │ │ ├── gradlew.bat │ │ └── settings.gradle.kts │ │ ├── plugin │ │ ├── .gradle │ │ │ ├── 4.10.2 │ │ │ │ ├── fileChanges │ │ │ │ │ └── last-build.bin │ │ │ │ ├── fileContent │ │ │ │ │ └── fileContent.lock │ │ │ │ ├── fileHashes │ │ │ │ │ ├── fileHashes.bin │ │ │ │ │ ├── fileHashes.lock │ │ │ │ │ └── resourceHashesCache.bin │ │ │ │ ├── gc.properties │ │ │ │ ├── javaCompile │ │ │ │ │ ├── classAnalysis.bin │ │ │ │ │ ├── jarAnalysis.bin │ │ │ │ │ ├── javaCompile.lock │ │ │ │ │ └── taskHistory.bin │ │ │ │ └── taskHistory │ │ │ │ │ ├── taskHistory.bin │ │ │ │ │ └── taskHistory.lock │ │ │ ├── buildOutputCleanup │ │ │ │ ├── buildOutputCleanup.lock │ │ │ │ ├── cache.properties │ │ │ │ └── outputFiles.bin │ │ │ ├── vcs-1 │ │ │ │ └── gc.properties │ │ │ ├── workspace-id.txt │ │ │ └── workspace-id.txt.lock │ │ ├── build.gradle │ │ ├── build │ │ │ ├── classes │ │ │ │ └── java │ │ │ │ │ └── main │ │ │ │ │ └── com │ │ │ │ │ └── liumiaocn │ │ │ │ │ └── HelloPlugin.class │ │ │ ├── libs │ │ │ │ └── jarPluginSample-1.0.jar │ │ │ ├── resources │ │ │ │ └── main │ │ │ │ │ └── com │ │ │ │ │ └── liumiaocn │ │ │ │ │ └── resource.xml │ │ │ └── tmp │ │ │ │ └── jar │ │ │ │ └── MANIFEST.MF │ │ ├── gradle │ │ │ └── wrapper │ │ │ │ ├── gradle-wrapper.jar │ │ │ │ └── gradle-wrapper.properties │ │ ├── gradlew │ │ ├── gradlew.bat │ │ ├── settings.gradle │ │ └── src │ │ │ └── main │ │ │ ├── java │ │ │ └── com │ │ │ │ └── liumiaocn │ │ │ │ └── HelloPlugin.java │ │ │ └── resources │ │ │ └── com │ │ │ └── liumiaocn │ │ │ └── resource.xml │ │ ├── property │ │ ├── .gradle │ │ │ ├── 4.10.2 │ │ │ │ ├── fileChanges │ │ │ │ │ └── last-build.bin │ │ │ │ ├── fileHashes │ │ │ │ │ ├── fileHashes.bin │ │ │ │ │ └── fileHashes.lock │ │ │ │ ├── gc.properties │ │ │ │ └── taskHistory │ │ │ │ │ ├── taskHistory.bin │ │ │ │ │ └── taskHistory.lock │ │ │ ├── buildOutputCleanup │ │ │ │ ├── buildOutputCleanup.lock │ │ │ │ └── cache.properties │ │ │ └── vcs-1 │ │ │ │ └── gc.properties │ │ ├── build.gradle │ │ └── settings.gradle │ │ ├── rest │ │ ├── .gradle │ │ │ ├── 4.10.2 │ │ │ │ ├── fileChanges │ │ │ │ │ └── last-build.bin │ │ │ │ ├── fileContent │ │ │ │ │ └── fileContent.lock │ │ │ │ ├── fileHashes │ │ │ │ │ ├── fileHashes.bin │ │ │ │ │ └── fileHashes.lock │ │ │ │ ├── gc.properties │ │ │ │ ├── javaCompile │ │ │ │ │ ├── javaCompile.lock │ │ │ │ │ └── taskHistory.bin │ │ │ │ └── taskHistory │ │ │ │ │ ├── taskHistory.bin │ │ │ │ │ └── taskHistory.lock │ │ │ ├── buildOutputCleanup │ │ │ │ ├── buildOutputCleanup.lock │ │ │ │ ├── cache.properties │ │ │ │ └── outputFiles.bin │ │ │ └── vcs-1 │ │ │ │ └── gc.properties │ │ ├── build.gradle │ │ ├── build │ │ │ ├── classes │ │ │ │ └── java │ │ │ │ │ └── main │ │ │ │ │ └── com │ │ │ │ │ └── liumiaocn │ │ │ │ │ └── springbootdemo │ │ │ │ │ ├── Greeting.class │ │ │ │ │ └── SpringbootdemoApplication.class │ │ │ ├── libs │ │ │ │ └── springbootdemo-0.0.1-SNAPSHOT.jar │ │ │ ├── resources │ │ │ │ └── main │ │ │ │ │ ├── application.properties │ │ │ │ │ └── templates │ │ │ │ │ └── greeting.html │ │ │ └── tmp │ │ │ │ └── bootJar │ │ │ │ └── MANIFEST.MF │ │ ├── settings.gradle │ │ └── src │ │ │ └── main │ │ │ ├── java │ │ │ └── com │ │ │ │ └── liumiaocn │ │ │ │ └── springbootdemo │ │ │ │ ├── Greeting.java │ │ │ │ └── SpringbootdemoApplication.java │ │ │ └── resources │ │ │ ├── application.properties │ │ │ └── templates │ │ │ └── greeting.html │ │ ├── springboot │ │ ├── .gradle │ │ │ ├── 4.10.2 │ │ │ │ ├── fileChanges │ │ │ │ │ └── last-build.bin │ │ │ │ ├── fileContent │ │ │ │ │ └── fileContent.lock │ │ │ │ ├── fileHashes │ │ │ │ │ ├── fileHashes.bin │ │ │ │ │ ├── fileHashes.lock │ │ │ │ │ └── resourceHashesCache.bin │ │ │ │ ├── gc.properties │ │ │ │ ├── javaCompile │ │ │ │ │ ├── classAnalysis.bin │ │ │ │ │ ├── jarAnalysis.bin │ │ │ │ │ ├── javaCompile.lock │ │ │ │ │ └── taskHistory.bin │ │ │ │ └── taskHistory │ │ │ │ │ ├── taskHistory.bin │ │ │ │ │ └── taskHistory.lock │ │ │ ├── buildOutputCleanup │ │ │ │ ├── buildOutputCleanup.lock │ │ │ │ ├── cache.properties │ │ │ │ └── outputFiles.bin │ │ │ └── vcs-1 │ │ │ │ └── gc.properties │ │ ├── build.gradle │ │ ├── settings.gradle │ │ └── src │ │ │ ├── main │ │ │ ├── java │ │ │ │ └── com │ │ │ │ │ └── liumiaocn │ │ │ │ │ └── springbootdemo │ │ │ │ │ └── SpringbootdemoApplication.java │ │ │ └── resources │ │ │ │ └── application.properties │ │ │ └── test │ │ │ └── java │ │ │ └── com │ │ │ └── liumiaocn │ │ │ └── springbootdemo │ │ │ └── SpringbootdemoApplicationTests.java │ │ └── wrapper │ │ ├── .gradle │ │ ├── 4.10.2 │ │ │ ├── fileChanges │ │ │ │ └── last-build.bin │ │ │ ├── fileHashes │ │ │ │ ├── fileHashes.bin │ │ │ │ └── fileHashes.lock │ │ │ ├── gc.properties │ │ │ └── taskHistory │ │ │ │ ├── taskHistory.bin │ │ │ │ └── taskHistory.lock │ │ ├── 5.0-rc-5 │ │ │ ├── fileChanges │ │ │ │ └── last-build.bin │ │ │ ├── fileHashes │ │ │ │ ├── fileHashes.bin │ │ │ │ └── fileHashes.lock │ │ │ ├── gc.properties │ │ │ └── taskHistory │ │ │ │ └── taskHistory.lock │ │ └── buildOutputCleanup │ │ │ ├── buildOutputCleanup.lock │ │ │ └── cache.properties │ │ ├── build.gradle │ │ ├── gradle │ │ └── wrapper │ │ │ ├── gradle-wrapper.jar │ │ │ └── gradle-wrapper.properties │ │ ├── gradlew │ │ └── gradlew.bat │ ├── hygieia │ ├── hcgithub │ ├── hcjenkins │ ├── hcsonarqube │ ├── hyapi │ └── hygui │ ├── java │ └── oracle │ │ └── Dockerfile │ ├── jira │ ├── Dockerfile.7.11 │ ├── Dockerfile.jira-software │ └── docker-entrypoint.sh │ ├── limesurvey │ ├── Dockerfile.4.1.17 │ └── docker-entrypoint.sh │ ├── maven │ ├── Dockerfile │ ├── mvn-entrypoint.sh │ └── settings-docker.xml │ ├── mysql │ ├── Docker.5.7.16 │ ├── Docker.5.7.18 │ ├── Dockerfile │ ├── README.md │ ├── docker-entrypoint.sh │ ├── get_db_structure.sh │ └── mysql_data_backup_rotate.sh │ ├── nexus │ ├── Dockerfile │ ├── Dockerfile.3.16.1 │ ├── Dockerfile.3.16.2 │ ├── Dockerfile.3.17.0 │ ├── Dockerfile.3.19.1 │ └── README.md │ ├── openldap │ ├── README.md │ └── docker-compose.yml │ ├── oracle │ └── Dockerfile.11.2.0.xe │ └── rancher │ ├── Dockerfile │ ├── README.md │ └── k3s │ ├── ansible │ ├── 10.all-in-one.yml │ ├── 20.normal-cluster.yml │ ├── ansible.cfg │ ├── common_vars.yml │ ├── download │ │ ├── README.md │ │ ├── defaults │ │ │ └── main.yml │ │ ├── files │ │ │ └── pause-amd64-3.1.tar.gz │ │ ├── handlers │ │ │ └── main.yml │ │ ├── meta │ │ │ └── main.yml │ │ ├── tasks │ │ │ └── main.yml │ │ ├── templates │ │ │ └── install.sh │ │ ├── tests │ │ │ ├── inventory │ │ │ └── test.yml │ │ └── vars │ │ │ └── main.yml │ ├── get-docker.sh │ ├── hosts │ ├── master │ │ ├── README.md │ │ ├── defaults │ │ │ └── main.yml │ │ ├── handlers │ │ │ └── main.yml │ │ ├── meta │ │ │ └── main.yml │ │ ├── tasks │ │ │ └── main.yml │ │ ├── templates │ │ │ └── install_agent.sh.j2 │ │ ├── tests │ │ │ ├── inventory │ │ │ └── test.yml │ │ └── vars │ │ │ └── main.yml │ └── node │ │ ├── README.md │ │ ├── defaults │ │ └── main.yml │ │ ├── handlers │ │ └── main.yml │ │ ├── meta │ │ └── main.yml │ │ ├── tasks │ │ └── main.yml │ │ ├── tests │ │ ├── inventory │ │ └── test.yml │ │ └── vars │ │ └── main.yml │ └── shell │ ├── install.cfg │ ├── install.sh │ └── k3s-mgnt ├── docker ├── easypack_docker.sh └── install-docker.sh ├── helm └── get_helm.sh ├── jeecg ├── jeecg-mgnt.sh └── vue-jeecg-boot ├── k8s ├── README.md ├── ansible │ ├── 10.all-in-one.yml │ ├── 20.multi-nodes.yml │ ├── ansible.cfg │ ├── clean │ │ ├── README.md │ │ ├── defaults │ │ │ └── main.yml │ │ ├── handlers │ │ │ └── main.yml │ │ ├── meta │ │ │ └── main.yml │ │ ├── tasks │ │ │ └── main.yml │ │ ├── tests │ │ │ ├── inventory │ │ │ └── test.yml │ │ └── vars │ │ │ └── main.yml │ ├── common_vars.yml │ ├── coredns │ │ ├── README.md │ │ ├── defaults │ │ │ └── main.yml │ │ ├── handlers │ │ │ └── main.yml │ │ ├── meta │ │ │ └── main.yml │ │ ├── tasks │ │ │ └── main.yml │ │ ├── templates │ │ │ └── coredns.yaml │ │ ├── tests │ │ │ ├── inventory │ │ │ └── test.yml │ │ └── vars │ │ │ └── main.yml │ ├── dashboard │ │ ├── README.md │ │ ├── defaults │ │ │ └── main.yml │ │ ├── handlers │ │ │ └── main.yml │ │ ├── meta │ │ │ └── main.yml │ │ ├── tasks │ │ │ └── main.yml │ │ ├── templates │ │ │ └── kubernetes-dashboard.yaml │ │ ├── tests │ │ │ ├── inventory │ │ │ └── test.yml │ │ └── vars │ │ │ └── main.yml │ ├── docker │ │ ├── README.md │ │ ├── defaults │ │ │ └── main.yml │ │ ├── handlers │ │ │ └── main.yml │ │ ├── meta │ │ │ └── main.yml │ │ ├── tasks │ │ │ └── main.yml │ │ ├── templates │ │ │ └── docker.service.j2 │ │ ├── tests │ │ │ ├── inventory │ │ │ └── test.yml │ │ └── vars │ │ │ └── main.yml │ ├── download │ │ ├── README.md │ │ ├── defaults │ │ │ └── main.yml │ │ ├── handlers │ │ │ └── main.yml │ │ ├── meta │ │ │ └── main.yml │ │ ├── tasks │ │ │ └── main.yml │ │ ├── tests │ │ │ ├── inventory │ │ │ └── test.yml │ │ └── vars │ │ │ └── main.yml │ ├── etcd │ │ ├── README.md │ │ ├── defaults │ │ │ └── main.yml │ │ ├── handlers │ │ │ └── main.yml │ │ ├── meta │ │ │ └── main.yml │ │ ├── tasks │ │ │ └── main.yml │ │ ├── templates │ │ │ └── etcd.service.j2 │ │ ├── tests │ │ │ ├── inventory │ │ │ └── test.yml │ │ └── vars │ │ │ └── main.yml │ ├── flannel │ │ ├── README.md │ │ ├── defaults │ │ │ └── main.yml │ │ ├── handlers │ │ │ └── main.yml │ │ ├── meta │ │ │ └── main.yml │ │ ├── tasks │ │ │ └── main.yml │ │ ├── templates │ │ │ ├── flanneld-csr.json.j2 │ │ │ ├── flanneld.service.j2 │ │ │ └── set-flannel-network.sh.j2 │ │ ├── tests │ │ │ ├── inventory │ │ │ └── test.yml │ │ └── vars │ │ │ └── main.yml │ ├── hosts │ ├── hosts.all-in-one │ ├── hosts.multi-nodes │ ├── master │ │ ├── README.md │ │ ├── defaults │ │ │ └── main.yml │ │ ├── handlers │ │ │ └── main.yml │ │ ├── meta │ │ │ └── main.yml │ │ ├── tasks │ │ │ └── main.yml │ │ ├── templates │ │ │ ├── kube-apiserver.service.j2 │ │ │ ├── kube-apiserver.service.j2.org │ │ │ ├── kube-controller-manager.service.j2 │ │ │ └── kube-scheduler.service.j2 │ │ ├── tests │ │ │ ├── inventory │ │ │ └── test.yml │ │ └── vars │ │ │ └── main.yml │ ├── metrics │ │ ├── README.md │ │ ├── defaults │ │ │ └── main.yml │ │ ├── files │ │ │ ├── aggregated-metrics-reader.yaml │ │ │ ├── auth-delegator.yaml │ │ │ ├── auth-reader.yaml │ │ │ ├── metrics-apiservice.yaml │ │ │ ├── metrics-server-service.yaml │ │ │ └── resource-reader.yaml │ │ ├── handlers │ │ │ └── main.yml │ │ ├── meta │ │ │ └── main.yml │ │ ├── tasks │ │ │ └── main.yml │ │ ├── templates │ │ │ └── metrics-server-deployment.yaml │ │ ├── tests │ │ │ ├── inventory │ │ │ └── test.yml │ │ └── vars │ │ │ └── main.yml │ ├── node │ │ ├── README.md │ │ ├── defaults │ │ │ └── main.yml │ │ ├── handlers │ │ │ └── main.yml │ │ ├── meta │ │ │ └── main.yml │ │ ├── tasks │ │ │ └── main.yml │ │ ├── templates │ │ │ ├── kube-proxy-config.yaml.j2 │ │ │ ├── kube-proxy.service.j2 │ │ │ ├── kubelet-config.yaml.j2 │ │ │ └── kubelet.service.j2 │ │ ├── tests │ │ │ ├── inventory │ │ │ └── test.yml │ │ └── vars │ │ │ └── main.yml │ ├── prepare │ │ ├── README.md │ │ ├── defaults │ │ │ └── main.yml │ │ ├── handlers │ │ │ └── main.yml │ │ ├── meta │ │ │ └── main.yml │ │ ├── tasks │ │ │ └── main.yml │ │ ├── templates │ │ │ ├── admin-csr.json.j2 │ │ │ ├── aggregator-csr.json.j2 │ │ │ ├── ca-config.json.j2 │ │ │ ├── ca-csr.json.j2 │ │ │ ├── etcd-csr.json.j2 │ │ │ ├── k8s-cm-csr.json.j2 │ │ │ ├── k8s-csr.json.j2 │ │ │ ├── k8s-sch-csr.json.j2 │ │ │ ├── kubeproxy-csr.json.j2 │ │ │ └── sysctl-kubernetes.conf.j2 │ │ ├── tests │ │ │ ├── inventory │ │ │ └── test.yml │ │ └── vars │ │ │ └── main.yml │ └── prometheus │ │ ├── README.md │ │ ├── defaults │ │ └── main.yml │ │ ├── handlers │ │ └── main.yml │ │ ├── meta │ │ └── main.yml │ │ ├── tasks │ │ └── main.yml │ │ ├── templates │ │ ├── configmap.yml │ │ ├── deployment.yml │ │ └── rbac.yml │ │ ├── tests │ │ ├── inventory │ │ └── test.yml │ │ └── vars │ │ └── main.yml ├── demo │ └── yaml │ │ ├── configmap │ │ ├── busybox-pod-all.yaml │ │ ├── busybox-pod-volume.yaml │ │ ├── busybox-pod.yaml │ │ ├── prometheus.configmap.yml │ │ ├── user.properties │ │ └── user.yml │ │ └── pod-demo1.yaml ├── easypack_kubernetes.sh ├── easypack_kubernetes_1.5.1_nowall.sh ├── kubernetes-dashboard.yaml └── shell │ ├── README.MD │ ├── all-k8s-mgnt.sh │ ├── common-util.sh │ ├── data │ └── pause-amd64-3.1.tar.gz │ ├── etc │ └── plugins │ │ ├── coredns │ │ └── coredns.yaml │ │ ├── dashboard │ │ ├── kubernetes-dashboard.yaml │ │ └── v1.10.1 │ │ │ └── kubernetes-dashboard.yaml │ │ └── heapster │ │ └── 1.5.4 │ │ ├── grafana.yaml │ │ ├── heapster-rbac.yaml │ │ ├── heapster.yaml │ │ └── influxdb.yaml │ ├── install.cfg │ ├── k8s-mgnt.sh │ ├── ssh-key-mgnt.sh │ ├── step0-get-binaries.sh │ ├── step1-2-prepare-admin-cert.sh │ ├── step1-3-prepare-setting.sh │ ├── step1-prepare-cert.sh │ ├── step2-install-etcd.sh │ ├── step3-install-apiserver.sh │ ├── step3-prepare-kubelet.sh │ ├── step4-install-scheduler.sh │ ├── step5-install-controller-manager.sh │ ├── step6-install-flannel.sh │ ├── step7-install-docker.sh │ ├── step8-1-prepare-node.sh │ ├── step8-2-install-kubelet.sh │ ├── step8-3-install-kubeproxy.sh │ ├── step9-1-setting-for-init.sh │ ├── step9-2-install-plugin-dashboard.sh │ ├── step9-3-install-plugin-coredns.sh │ └── step9-4-install-plugin-heapster.sh ├── karma ├── karma.conf.js ├── reports │ └── coverage │ │ ├── lcov-report │ │ ├── base.css │ │ ├── index.html │ │ ├── prettify.css │ │ ├── prettify.js │ │ ├── sort-arrow-sprite.png │ │ ├── sorter.js │ │ ├── src │ │ │ ├── cal.js.html │ │ │ └── index.html │ │ └── test │ │ │ ├── cal.spec.js.html │ │ │ └── index.html │ │ └── lcov.info ├── sonar-project.properties ├── src │ └── cal.js └── test │ └── cal.spec.js ├── machinelearning ├── caffe │ └── installcaffe4centos.sh └── tensorflow │ ├── basic-operation-1.py │ ├── basic-operation-10.py │ ├── basic-operation-11.py │ ├── basic-operation-12.py │ ├── basic-operation-13.py │ ├── basic-operation-14.py │ ├── basic-operation-15.py │ ├── basic-operation-2.py │ ├── basic-operation-3.py │ ├── basic-operation-4.py │ ├── basic-operation-5.py │ ├── basic-operation-6.py │ ├── basic-operation-7.py │ ├── basic-operation-8.py │ ├── basic-operation-9.py │ └── linearmodel.py ├── maven ├── easypack_jdk └── easypack_mvn.sh ├── mesos ├── README.md └── easypack_mesos.sh ├── monitor └── prometheus │ ├── config │ ├── cadvisor │ │ ├── docker-compose.yml │ │ └── prometheus.yml │ ├── docker-compose.yml │ ├── nodecadvisor │ │ ├── docker-compose.yml │ │ └── prometheus.yml │ ├── prometheus-demo.yml │ ├── prometheus-node.yml │ └── prometheus-random.yml │ └── kubernetes │ ├── all │ ├── configmap.yml │ ├── deployment.yml │ └── rbac.yml │ ├── apiserver │ ├── configmap.yml │ ├── deployment.yml │ └── rbac.yml │ ├── cadvisor │ ├── configmap.yml │ ├── deployment.yml │ └── rbac.yml │ ├── endpointsvc │ ├── configmap.yml │ ├── deployment.yml │ └── rbac.yml │ ├── node │ ├── configmap.yml │ ├── deployment.yml │ └── rbac.yml │ └── pod │ ├── configmap.yml │ ├── deployment.yml │ └── rbac.yml ├── npm └── install-node-in-centos.sh ├── openshift └── install-openshift.sh ├── pics └── easypack-logo.png ├── pip └── pip_mgnt.sh ├── utils └── lscolor │ └── create_files.sh ├── yaml ├── demo │ ├── anchors.yml │ ├── array.yml │ ├── basictype.yml │ ├── blockmessage.yml │ ├── booleanvar.yml │ ├── composed.yml │ ├── convert.yml │ ├── errorformat.yml │ ├── stringquote.yml │ ├── yamlcomment.yml │ └── yamldic.yml └── printyaml.py └── zipkin └── python ├── A.py ├── B.py ├── C.py ├── D.py ├── E.py └── test_zipkin.sh /ant/demo/HelloWorld.java: -------------------------------------------------------------------------------- 1 | public class HelloWorld { 2 | public static void main(String[] args) { 3 | System.out.println("Hello World, LiuMiao"); 4 | } 5 | } 6 | -------------------------------------------------------------------------------- /ant/demo/build.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | -------------------------------------------------------------------------------- /ant/ivy/resources/logback.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | ANT + LogBack : %-5level %logger{36} - %msg%n 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | -------------------------------------------------------------------------------- /ant/ivy/war/META-INF/MANIFEST.MF: -------------------------------------------------------------------------------- 1 | Manifest-Version: 1.0 2 | Class-Path: 3 | 4 | -------------------------------------------------------------------------------- /ant/ivy/war/WEB-INF/mvc-dispatcher-servlet.xml: -------------------------------------------------------------------------------- 1 | 11 | 12 | 13 | 14 | 16 | 17 | /WEB-INF/pages/ 18 | 19 | 20 | .jsp 21 | 22 | 23 | 24 | 25 | 26 | 27 | 28 | 29 | -------------------------------------------------------------------------------- /ant/ivy/war/WEB-INF/pages/index.jsp: -------------------------------------------------------------------------------- 1 | <%@taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core"%> 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 |

Ant and Ivy Spring MVC demo Project

10 | 11 |

Greeting Messages: ${message}

12 | 13 | 14 | -------------------------------------------------------------------------------- /ant/ivy/war/WEB-INF/web.xml: -------------------------------------------------------------------------------- 1 | 6 | 7 | Ant and Ivy for Spring MVC demo Application 8 | 9 | 10 | mvc-dispatcher 11 | org.springframework.web.servlet.DispatcherServlet 12 | 1 13 | 14 | 15 | 16 | mvc-dispatcher 17 | / 18 | 19 | 20 | 21 | contextConfigLocation 22 | /WEB-INF/mvc-dispatcher-servlet.xml 23 | 24 | 25 | 26 | org.springframework.web.context.ContextLoaderListener 27 | 28 | 29 | -------------------------------------------------------------------------------- /ant/ivy/war/resources/theme1/css/core.css: -------------------------------------------------------------------------------- 1 | h1 { 2 | font-size: 50px; 3 | } 4 | 5 | p { 6 | font-size: 20px; 7 | border: 5px solid red; 8 | padding:10px; 9 | } -------------------------------------------------------------------------------- /containers/alpine/angular/Dockerfile: -------------------------------------------------------------------------------- 1 | FROM node:9.11-alpine 2 | 3 | ENV ENV_NG_PROJECT_NAME ${ENV_NG_PROJECT_NAME:-hello} 4 | WORKDIR /workspace 5 | 6 | RUN npm install -g @angular/cli \ 7 | npm install -g typescript \ 8 | npm install -g typings \ 9 | ng config --global packageManager=yarn \ 10 | ng new ${ENV_NG_PROJECT_NAME} 11 | 12 | CMD ng serve -H 0.0.0.0 --port=4200 13 | -------------------------------------------------------------------------------- /containers/alpine/angular/Dockerfile.cli: -------------------------------------------------------------------------------- 1 | ############################################################################### 2 | # 3 | #IMAGE: angular-cli 4 | #VERSION: 8.3.8 5 | # 6 | ############################################################################### 7 | FROM liumiaocn/nodejs:10.15.3 8 | 9 | ############################################################################### 10 | #MAINTAINER 11 | ############################################################################### 12 | MAINTAINER LiuMiao 13 | 14 | RUN apk update \ 15 | && npm install -g @angular/cli@8.3.8 \ 16 | && rm -rf /tmp/* /var/cache/apk/* *.tar.gz ~/.npm \ 17 | && npm cache clear --force \ 18 | && yarn cache clean \ 19 | && sed -i -e "s/bin\/ash/bin\/sh/" /etc/passwd 20 | -------------------------------------------------------------------------------- /containers/alpine/angular/Dockerfile.cli.8.3.21: -------------------------------------------------------------------------------- 1 | ############################################################################### 2 | # 3 | #IMAGE: angular-cli 4 | #VERSION: 8.3.21 5 | # 6 | ############################################################################### 7 | FROM liumiaocn/nodejs:10.15.3 8 | 9 | ############################################################################### 10 | #MAINTAINER 11 | ############################################################################### 12 | MAINTAINER LiuMiao 13 | 14 | RUN apk update \ 15 | && apk add --no-cache git \ 16 | && npm install -g @angular/cli@8.3.21 \ 17 | && rm -rf /tmp/* /var/cache/apk/* *.tar.gz ~/.npm \ 18 | && npm cache clear --force \ 19 | && yarn cache clean \ 20 | && sed -i -e "s/bin\/ash/bin\/sh/" /etc/passwd 21 | -------------------------------------------------------------------------------- /containers/alpine/ansible/Dockerfile: -------------------------------------------------------------------------------- 1 | ############################################################################### 2 | # 3 | #IMAGE: ansible 4 | #VERSION: latest 5 | # 6 | ############################################################################### 7 | FROM alpine 8 | 9 | ############################################################################### 10 | #MAINTAINER 11 | ############################################################################### 12 | MAINTAINER LiuMiao 13 | 14 | #update apk for install 15 | RUN apk update 16 | 17 | #install ansible and openssh 18 | RUN apk add ansible openssh 19 | 20 | #init ansible hosts file 21 | RUN mkdir -p /etc/ansible 22 | RUN echo "localhost" >/etc/ansible/hosts 23 | 24 | #init rsa ssh key pair 25 | RUN ssh-keygen -t rsa -P "" -f ~/.ssh/id_rsa 26 | 27 | #delete cache files 28 | RUN rm -rf /var/cache/apk/* 29 | -------------------------------------------------------------------------------- /containers/alpine/clair/Dockerfile: -------------------------------------------------------------------------------- 1 | ############################################################################### 2 | # 3 | #IMAGE: Clair-git 4 | #VERSION: latest 5 | # 6 | ############################################################################### 7 | FROM quay.io/coreos/clair-git:latest 8 | 9 | ############################################################################### 10 | #MAINTAINER 11 | ############################################################################### 12 | MAINTAINER LiuMiao 13 | -------------------------------------------------------------------------------- /containers/alpine/jenkins/Dockerfile_fleeto: -------------------------------------------------------------------------------- 1 | FROM dustise/jenkins 2 | RUN /usr/local/bin/install-plugins.sh gitlab-plugin sonar redmine docker-build-step ansible build-pipeline-plugin buildgraph-view workflow-aggregator pipeline-maven pipeline-utility-steps ssh-slaves 3 | -------------------------------------------------------------------------------- /containers/alpine/jenkins/demo/freestyle/config.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | Free Style Job 4 | false 5 | 6 | 7 | 8 | 9 | 10 | 11 | true 12 | false 13 | false 14 | false 15 | 16 | false 17 | 18 | 19 | echo hello liumiaocn 20 | 21 | 22 | 23 | 24 | 25 | -------------------------------------------------------------------------------- /containers/alpine/jenkins/demo/jenkinsfile/single/Jenkinsfile: -------------------------------------------------------------------------------- 1 | pipeline { 2 | agent any 3 | 4 | stages { 5 | stage('Build') { 6 | steps { 7 | sh 'echo Build stage ...' 8 | } 9 | } 10 | stage('Test'){ 11 | steps { 12 | sh 'echo Test stage ...' 13 | } 14 | } 15 | stage('Deploy') { 16 | steps { 17 | sh 'echo Deploy stage ...' 18 | } 19 | } 20 | } 21 | } 22 | -------------------------------------------------------------------------------- /containers/alpine/jenkins/demo/node/json/agent.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "agent001", 3 | "nodeDescription": "jenkins agent 001", 4 | "numExecutors": "1", 5 | "remoteFS": "/tmp/jenkins/agent001", 6 | "labelString": "", 7 | "mode": "NORMAL", 8 | "": [ 9 | "hudson.slaves.JNLPLauncher", 10 | "hudson.slaves.RetentionStrategy$Always" 11 | ], 12 | "launcher": { 13 | "stapler-class": "hudson.slaves.JNLPLauncher", 14 | "$class": "hudson.slaves.JNLPLauncher", 15 | "workDirSettings": { 16 | "disabled": false, 17 | "workDirPath": "", 18 | "internalDir": "remoting", 19 | "failIfWorkDirIsMissing": false 20 | }, 21 | "tunnel": "", 22 | "vmargs": "" 23 | }, 24 | "retentionStrategy": { 25 | "stapler-class": "hudson.slaves.RetentionStrategy$Always", 26 | "$class": "hudson.slaves.RetentionStrategy$Always" 27 | }, 28 | "nodeProperties": { 29 | "stapler-class-bag": "true" 30 | }, 31 | "type": "hudson.slaves.DumbSlave", 32 | "Jenkins-Crumb": "d5b90aaebb5c75b56e24f3bfebc8e43d" 33 | } 34 | -------------------------------------------------------------------------------- /containers/alpine/jenkins/demo/node/xml/agent001.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | agent001 4 | jenkins agent 001 modified 5 | /tmp/agent001 6 | 2 7 | NORMAL 8 | 9 | 10 | 11 | false 12 | remoting 13 | false 14 | 15 | 16 | 17 | 18 | -------------------------------------------------------------------------------- /containers/alpine/jenkins/demo/pipeline/docker/build/Dockerfile: -------------------------------------------------------------------------------- 1 | FROM nginx:latest 2 | 3 | ############################################################################### 4 | #MAINTAINER 5 | ############################################################################### 6 | MAINTAINER LiuMiao 7 | -------------------------------------------------------------------------------- /containers/alpine/jenkins/demo/pipeline/docker/deploy/Dockerfile: -------------------------------------------------------------------------------- 1 | FROM nginx:latest 2 | 3 | ############################################################################### 4 | #MAINTAINER 5 | ############################################################################### 6 | MAINTAINER LiuMiao 7 | -------------------------------------------------------------------------------- /containers/alpine/jenkins/demo/pipeline/docker/dockerfile/Dockerfile: -------------------------------------------------------------------------------- 1 | ############################################################################### 2 | # 3 | #IMAGE: angular-cli 4 | #VERSION: 8.0.3 5 | # 6 | ############################################################################### 7 | FROM liumiaocn/nodejs:10.15.3 8 | 9 | ############################################################################### 10 | #MAINTAINER 11 | ############################################################################### 12 | MAINTAINER LiuMiao 13 | 14 | RUN apk update \ 15 | && npm install -g @angular/cli@8.0.3 \ 16 | && rm -rf /tmp/* /var/cache/apk/* *.tar.gz ~/.npm \ 17 | && npm cache clear --force \ 18 | && yarn cache clean \ 19 | && sed -i -e "s/bin\/ash/bin\/sh/" /etc/passwd 20 | -------------------------------------------------------------------------------- /containers/alpine/jenkins/demo/pipeline/docker/registry/Dockerfile: -------------------------------------------------------------------------------- 1 | FROM nginx:latest 2 | 3 | ############################################################################### 4 | #MAINTAINER 5 | ############################################################################### 6 | MAINTAINER LiuMiao 7 | -------------------------------------------------------------------------------- /containers/alpine/jenkins/docker-compose.yml: -------------------------------------------------------------------------------- 1 | version: '2' 2 | 3 | services: 4 | # jenkins service based on Jenkins LTS version 5 | jenkins: 6 | image: liumiaocn/jenkins:2.176.1 7 | ports: 8 | - "32002:8080" 9 | - "50000:50000" 10 | environment: 11 | - JENKINS_ADMIN_ID=root 12 | - JENKINS_ADMIN_PW=liumiaocn 13 | - JENKINS_MODE=master 14 | - JAVA_OPTS=-Djenkins.install.runSetupWizard=false 15 | volumes: 16 | - ./data/:/data/jenkins 17 | - /var/run/docker.sock:/var/run/docker.sock 18 | restart: "no" 19 | -------------------------------------------------------------------------------- /containers/alpine/jenkins/hudson.plugins.sonar.SonarRunnerInstallation.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | Bundled 6 | /usr/local/share/sonar 7 | 8 | 9 | 10 | 11 | -------------------------------------------------------------------------------- /containers/alpine/jenkins/hudson.tasks.Maven.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | bundled 6 | /usr/local/share/maven 7 | 8 | 9 | 10 | 11 | -------------------------------------------------------------------------------- /containers/alpine/jenkins/init.groovy: -------------------------------------------------------------------------------- 1 | import hudson.model.*; 2 | import jenkins.model.*; 3 | 4 | 5 | Thread.start { 6 | sleep 10000 7 | println "--> setting agent port for jnlp" 8 | def env = System.getenv() 9 | int port = env['JENKINS_SLAVE_AGENT_PORT'].toInteger() 10 | Jenkins.instance.setSlaveAgentPort(port) 11 | println "--> setting agent port for jnlp... done" 12 | } 13 | -------------------------------------------------------------------------------- /containers/alpine/jenkins/init_csrf.groovy: -------------------------------------------------------------------------------- 1 | import hudson.security.csrf.DefaultCrumbIssuer 2 | import jenkins.model.Jenkins 3 | 4 | def jenkins = Jenkins.instance; 5 | jenkins.setCrumbIssuer(new DefaultCrumbIssuer(true)); 6 | jenkins.save(); 7 | -------------------------------------------------------------------------------- /containers/alpine/jenkins/init_csrf_disable.groovy: -------------------------------------------------------------------------------- 1 | import hudson.security.csrf.DefaultCrumbIssuer 2 | import jenkins.model.Jenkins 3 | 4 | def jenkins = Jenkins.instance; 5 | println "--> setting csrf disabled" 6 | jenkins.setCrumbIssuer(null); 7 | jenkins.save(); 8 | println "--> setting csrf disabled... done" 9 | -------------------------------------------------------------------------------- /containers/alpine/jenkins/init_login.groovy: -------------------------------------------------------------------------------- 1 | import hudson.security.* 2 | import jenkins.model.* 3 | 4 | def instance = Jenkins.getInstance() 5 | 6 | def adminID = System.getenv("JENKINS_ADMIN_ID") 7 | def adminPW = System.getenv("JENKINS_ADMIN_PW") 8 | 9 | println "--> Checking user information" 10 | 11 | // if (!instance.isUseSecurity()) { 12 | println "--> Creating jenkins user" 13 | 14 | def hudsonRealm = new HudsonPrivateSecurityRealm(false) 15 | hudsonRealm.createAccount(adminID, adminPW) 16 | instance.setSecurityRealm(hudsonRealm) 17 | 18 | def strategy = new FullControlOnceLoggedInAuthorizationStrategy() 19 | instance.setAuthorizationStrategy(strategy) 20 | instance.save() 21 | // } 22 | -------------------------------------------------------------------------------- /containers/alpine/jenkins/sample/jenkinsfileprj/Jenkinsfile: -------------------------------------------------------------------------------- 1 | node { 2 | stage('build-using-scm'){ 3 | echo 'build'; 4 | } 5 | 6 | stage('test-using-scm'){ 7 | echo 'test'; 8 | } 9 | 10 | stage('deploy-using-scm'){ 11 | echo 'deploy'; 12 | } 13 | } 14 | -------------------------------------------------------------------------------- /containers/alpine/jenkins/sample/master/docker-compose.yml: -------------------------------------------------------------------------------- 1 | version: '2' 2 | 3 | services: 4 | # jenkins service based on Jenkins LTS version 5 | jenkins: 6 | image: liumiaocn/jenkins:2.150.1 7 | ports: 8 | - "32002:8080" 9 | - "50000:50000" 10 | environment: 11 | - JENKINS_ADMIN_ID=root 12 | - JENKINS_ADMIN_PW=liumiaocn 13 | - JENKINS_MODE=master 14 | volumes: 15 | - ./data/:/data/jenkins 16 | restart: "no" 17 | -------------------------------------------------------------------------------- /containers/alpine/jenkins/sample/slave/docker-compose.yml: -------------------------------------------------------------------------------- 1 | version: '2' 2 | 3 | services: 4 | # jenkins service based on Jenkins LTS version 5 | jenkins: 6 | image: liumiaocn/jenkins:2.150.1 7 | environment: 8 | - JENKINS_MODE=slave 9 | - JENKINS_MASTER_URL=http://192.168.163.118:32002/computer/agent001/slave-agent.jnlp 10 | - JENKINS_SLAVE_SECRET=48de37b3bb2cbf61b2ff7eca62b692a436f54d6bf930e4e6a6f8b1d5f64fa4be 11 | - JENKINS_SLAVE_WORKDIR=/tmp/agent/jenkins 12 | volumes: 13 | - ./data/:/data/jenkins 14 | restart: "no" 15 | -------------------------------------------------------------------------------- /containers/alpine/jmeter/entrypoint.sh: -------------------------------------------------------------------------------- 1 | #!/bin/sh 2 | 3 | JMETER_OPTIONS="" 4 | if [ _"$ENV_JMETER_MODE" = _"MASTER" ]; then 5 | JMETER_OPTIONS="${JMETER_OPTIONS} -R ${ENV_SLAVE_ADDR}" 6 | elif [ _"$ENV_JMETER_MODE" = _"SLAVE" ]; then 7 | JMETER_OPTIONS="${JMETER_OPTIONS} -Djava.rmi.server.hostname=${ENV_SERVER_HOSTNAME}" 8 | JMETER_OPTIONS="${JMETER_OPTIONS} -Dserver_port=${ENV_SERVER_PORT}" 9 | fi 10 | 11 | jmeter "${JMETER_OPTIONS}" $@ 12 | -------------------------------------------------------------------------------- /containers/alpine/jre/Dockerfile: -------------------------------------------------------------------------------- 1 | ############################################################################### 2 | # 3 | #IMAGE: JRE 4 | #VERSION: 8.0 5 | # 6 | ############################################################################### 7 | FROM alpine:latest 8 | 9 | ############################################################################### 10 | #MAINTAINER 11 | ############################################################################### 12 | MAINTAINER LiuMiao 13 | 14 | ############################################################################### 15 | #ENVIRONMENT VARS 16 | ############################################################################### 17 | ENV JAVA_HOME=/usr/lib/jvm/default-jvm/jre 18 | 19 | ############################################################################### 20 | #install 21 | ############################################################################### 22 | RUN apk upgrade --update-cache; \ 23 | apk add openjdk8-jre; \ 24 | rm -rf /tmp/* /var/cache/apk/* 25 | 26 | 27 | CMD ["java", "-version"] 28 | -------------------------------------------------------------------------------- /containers/alpine/maven/demo/JavaFXSample/pom.xml: -------------------------------------------------------------------------------- 1 | 2 | 4 | 4.0.0 5 | 6 | com.liumiaocn 7 | javademo 8 | 0.0.1-SNAPSHOT 9 | jar 10 | 11 | javafxdemo 12 | JavaFX demo project 13 | 14 | 15 | 16 | 17 | com.zenjava 18 | javafx-maven-plugin 19 | 8.8.3 20 | 21 | com.liumiaocn.javademo.Main 22 | 23 | 24 | 25 | 26 | 27 | 28 | -------------------------------------------------------------------------------- /containers/alpine/maven/demo/JavaFXSample/src/main/java/com/liumiaocn/javademo/Controller.java: -------------------------------------------------------------------------------- 1 | package com.liumiaocn.javademo; 2 | 3 | public class Controller { 4 | } 5 | -------------------------------------------------------------------------------- /containers/alpine/maven/demo/JavaFXSample/src/main/java/com/liumiaocn/javademo/Main.java: -------------------------------------------------------------------------------- 1 | package com.liumiaocn.javademo; 2 | 3 | import javafx.application.Application; 4 | import javafx.fxml.FXMLLoader; 5 | import javafx.scene.Parent; 6 | import javafx.scene.Scene; 7 | import javafx.stage.Stage; 8 | 9 | public class Main extends Application { 10 | 11 | @Override 12 | public void start(Stage primaryStage) throws Exception{ 13 | Parent root = FXMLLoader.load(getClass().getResource("/fxml/sample.fxml")); 14 | primaryStage.setTitle("Hello LiuMiao"); 15 | primaryStage.setScene(new Scene(root, 600, 600)); 16 | primaryStage.show(); 17 | } 18 | 19 | 20 | public static void main(String[] args) { 21 | launch(args); 22 | } 23 | } 24 | -------------------------------------------------------------------------------- /containers/alpine/maven/demo/JavaFXSample/src/main/resources/fxml/sample.fxml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 8 | 9 | -------------------------------------------------------------------------------- /containers/alpine/maven/demo/multibytes/pom.xml: -------------------------------------------------------------------------------- 1 | 2 | 4 | 4.0.0 5 | 6 | com.liumiaocn 7 | springbootdemo 8 | 0.0.1-SNAPSHOT 9 | war 10 | 11 | springbootdemo 12 | spring boot demo project 13 | 14 | -------------------------------------------------------------------------------- /containers/alpine/maven/demo/multibytes/src/main/webapp/WEB-INF/test/测试用例模版.robot: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/liumiaocn/easypack/1b1ad856ab2a01441721905e6f4d2c8895a897a6/containers/alpine/maven/demo/multibytes/src/main/webapp/WEB-INF/test/测试用例模版.robot -------------------------------------------------------------------------------- /containers/alpine/maven/demo/multibytes/src/main/webapp/WEB-INF/test/测试用例集模版.robot: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/liumiaocn/easypack/1b1ad856ab2a01441721905e6f4d2c8895a897a6/containers/alpine/maven/demo/multibytes/src/main/webapp/WEB-INF/test/测试用例集模版.robot -------------------------------------------------------------------------------- /containers/alpine/maven/demo/multibytes/src/main/webapp/WEB-INF/test/测试结果报告模版.html: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/liumiaocn/easypack/1b1ad856ab2a01441721905e6f4d2c8895a897a6/containers/alpine/maven/demo/multibytes/src/main/webapp/WEB-INF/test/测试结果报告模版.html -------------------------------------------------------------------------------- /containers/alpine/maven/demo/multibytes/src/main/webapp/WEB-INF/web.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/liumiaocn/easypack/1b1ad856ab2a01441721905e6f4d2c8895a897a6/containers/alpine/maven/demo/multibytes/src/main/webapp/WEB-INF/web.xml -------------------------------------------------------------------------------- /containers/alpine/maven/demo/multibytes/src/main/webapp/index.html: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/liumiaocn/easypack/1b1ad856ab2a01441721905e6f4d2c8895a897a6/containers/alpine/maven/demo/multibytes/src/main/webapp/index.html -------------------------------------------------------------------------------- /containers/alpine/maven/settings-docker.xml: -------------------------------------------------------------------------------- 1 | 5 | /usr/share/maven/ref/repository 6 | 7 | -------------------------------------------------------------------------------- /containers/alpine/nginx/Dockerfile: -------------------------------------------------------------------------------- 1 | ############################################################################### 2 | # 3 | #IMAGE: nginx(Alpine)(https) 4 | #VERSION: 1.17.6 5 | # 6 | ############################################################################### 7 | FROM nginx:1.17.6-alpine 8 | 9 | ############################################################################### 10 | #MAINTAINER 11 | ############################################################################### 12 | MAINTAINER LiuMiao 13 | 14 | ARG VAR_CN_INFO=www.devops.com 15 | 16 | COPY default.conf /etc/nginx/conf.d/default.conf 17 | COPY create_https_certs.sh /etc/nginx/ssl/ 18 | 19 | RUN apk update \ 20 | && apk add --no-cache openssl \ 21 | && cd /etc/nginx/ssl \ 22 | && sh create_https_certs.sh ${VAR_CN_INFO} 23 | -------------------------------------------------------------------------------- /containers/alpine/nodejs/Dockerfile.8.6.0: -------------------------------------------------------------------------------- 1 | FROM alpine:3.10.2 2 | ENV NODE_VERSION 8.6.0 3 | 4 | RUN apk add --no-cache curl gcc g++ python make linux-headers \ 5 | && curl -fsSLO --compressed "https://nodejs.org/dist/v$NODE_VERSION/node-v$NODE_VERSION.tar.xz" \ 6 | && tar -xf "node-v$NODE_VERSION.tar.xz" \ 7 | && cd "node-v$NODE_VERSION" \ 8 | && ./configure \ 9 | && make \ 10 | && make install \ 11 | && cd .. \ 12 | && rm -Rf "node-v$NODE_VERSION" \ 13 | && rm "node-v$NODE_VERSION.tar.xz" 14 | 15 | CMD [ "node" ] 16 | -------------------------------------------------------------------------------- /containers/alpine/redmine/docker-compose.yml: -------------------------------------------------------------------------------- 1 | version: '2' 2 | 3 | services: 4 | 5 | redmine: 6 | image: liumiaocn/redmine 7 | ports: 8 | - 3000:3000 9 | environment: 10 | REDMINE_DB_MYSQL: redmine 11 | REDMINE_DB_PASSWORD: secret 12 | depends_on: 13 | - redminedb 14 | restart: never 15 | 16 | redminedb: 17 | image: liumiaocn/mysql 18 | environment: 19 | MYSQL_ROOT_PASSWORD: secret 20 | MYSQL_DATABASE: redmine 21 | restart: never 22 | -------------------------------------------------------------------------------- /containers/alpine/redmine/docker-compose.yml.mysql5.7: -------------------------------------------------------------------------------- 1 | version: '2' 2 | 3 | services: 4 | # database service: mysql 5 | mysql: 6 | image: mysql:5.7.18 7 | ports: 8 | - "3306:3306" 9 | volumes: 10 | - /home/local/mysql/data/:/var/lib/mysql 11 | - /home/local/mysql/conf.d/:/etc/mysql/conf.d 12 | environment: 13 | - MYSQL_ROOT_PASSWORD=hello123 14 | - MYSQL_DATABASE=redmine 15 | restart: "no" 16 | 17 | 18 | # Security service: redmine 19 | redmine: 20 | image: liumiaocn/redmine 21 | ports: 22 | - "3000:3000" 23 | volumes: 24 | - /home/local/redmine/:/usr/src/redmine/files 25 | environment: 26 | - REDMINE_DB_MYSQL=mysql 27 | - REDMINE_DB_DATABASE=redmine 28 | - REDMINE_DB_USERNAME=root 29 | - REDMINE_DB_PASSWORD=hello123 30 | - REDMINE_DB_PORT=3306 31 | links: 32 | - mysql:mysql 33 | depends_on: 34 | - mysql 35 | restart: "no" 36 | -------------------------------------------------------------------------------- /containers/alpine/redmine/themes.tar.gz: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/liumiaocn/easypack/1b1ad856ab2a01441721905e6f4d2c8895a897a6/containers/alpine/redmine/themes.tar.gz -------------------------------------------------------------------------------- /containers/alpine/robot/Dockerfile: -------------------------------------------------------------------------------- 1 | ############################################################################### 2 | # 3 | #IMAGE: robotframework 4 | #VERSION: latest 5 | # 6 | ############################################################################### 7 | FROM alpine:3.8 8 | 9 | ############################################################################### 10 | #MAINTAINER 11 | ############################################################################### 12 | MAINTAINER LiuMiao 13 | 14 | #add 15 | ADD run.sh /usr/local/bin/ 16 | 17 | #update apk for install 18 | RUN apk update \ 19 | && apk add python py-pip \ 20 | && pip install --upgrade pip \ 21 | && pip install robotframework \ 22 | && pip install robotframework-selenium2library \ 23 | && pip install robotframework-databaselibrary \ 24 | && pip install robotframework-yamllibrary \ 25 | && chmod 755 /usr/local/bin/run.sh \ 26 | && rm -rf /var/cache/apk/* 27 | 28 | #volume 29 | volume /data/robot 30 | 31 | workdir /data/robot 32 | 33 | CMD ["run.sh"] 34 | -------------------------------------------------------------------------------- /containers/alpine/robot/run.sh: -------------------------------------------------------------------------------- 1 | #!/bin/sh 2 | 3 | while true; 4 | do 5 | sleep 1000; 6 | done 7 | -------------------------------------------------------------------------------- /containers/alpine/robot/webdemo/Dockerfile: -------------------------------------------------------------------------------- 1 | FROM alpine:3.9 2 | 3 | ADD html /webdemo/html 4 | ADD server.py /webdemo 5 | 6 | run apk add --no-cache python 7 | 8 | cmd ["python", "/webdemo/server.py"] 9 | -------------------------------------------------------------------------------- /containers/alpine/robot/webdemo/html/demo.css: -------------------------------------------------------------------------------- 1 | body { 2 | font-family: sans-serif; 3 | color: black; 4 | background: #DDDDDD; 5 | } 6 | #container { 7 | width: 30em; 8 | height: 15em; 9 | margin: 5em auto; 10 | background: white; 11 | border: 1px solid gray; 12 | padding: 0.5em 2em; 13 | } 14 | -------------------------------------------------------------------------------- /containers/alpine/robot/webdemo/html/error.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | Error Page 5 | 6 | 7 | 8 |
9 |

Error Page

10 |

Login failed. Invalid user name and/or password.

11 |
12 | 13 | 14 | -------------------------------------------------------------------------------- /containers/alpine/robot/webdemo/html/welcome.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | Welcome Page 5 | 6 | 7 | 8 |
9 |

Welcome Page

10 |

Login succeeded. Now you can logout.

11 |
12 | 13 | 14 | -------------------------------------------------------------------------------- /containers/alpine/sonar/README.md: -------------------------------------------------------------------------------- 1 | # easypack 2 | ##让Linux下没有难装的流行开源软件 3 | ##Make popular OSS easily installed in linux 4 | 5 | #Sonarqube 6 | ## With Default H2 Database 7 | ``` 8 | docker run --rm --name sonarqube \ 9 | -p 9000:9000 -p 9092:9092 \ 10 | liumiaocn/sonarqube:5.6.5 11 | ``` 12 | ## With Mariadb or Mysql Database 13 | ``` 14 | docker run --rm --name sonarqube \ 15 | -p 9000:9000 -p 9092:9092 \ 16 | -e SONARQUBE_JDBC_USERNAME=sonar \ 17 | -e SONARQUBE_JDBC_PASSWORD=sonar \ 18 | -e SONARQUBE_JDBC_URL=jdbc:mysql://localhost/sonar \ 19 | liumiaocn/sonarqube:5.6.5 20 | ``` 21 | 22 | ## Setting Mariadb or Mysql 23 | ``` 24 | DROP DATABASE if exists sonar; 25 | CREATE DATABASE sonar CHARACTER SET utf8 COLLATE utf8_general_ci; 26 | DROP USER sonar; 27 | CREATE USER 'sonar' IDENTIFIED BY 'sonar'; 28 | GRANT ALL ON sonar.* TO 'sonar'@'%' IDENTIFIED BY 'sonar'; 29 | GRANT ALL ON sonar.* TO 'sonar'@'localhost' IDENTIFIED BY 'sonar'; 30 | FLUSH PRIVILEGES; 31 | ``` 32 | -------------------------------------------------------------------------------- /containers/alpine/sonar/docker-compose.6.7.yml: -------------------------------------------------------------------------------- 1 | version: '2' 2 | 3 | services: 4 | # database service: mysql 5 | mysql: 6 | image: liumiaocn/mysql:5.7.16 7 | ports: 8 | - "3306:3306" 9 | volumes: 10 | - ./mysql/data/:/var/lib/mysql 11 | - ./mysql/conf.d/:/etc/mysql/conf.d 12 | environment: 13 | - MYSQL_ROOT_PASSWORD=hello123 14 | - MYSQL_DATABASE=sonarqube 15 | restart: "no" 16 | 17 | 18 | # Security service: sonarqube 19 | sonarqube: 20 | image: liumiaocn/sonarqube:6.7.1 21 | ports: 22 | - "9000:9000" 23 | volumes: 24 | - ./sonar/data/:/opt/sonarqube/data 25 | - ./sonar/log/:/opt/sonarqube/log 26 | - ./sonar/extensions/:/opt/sonarqube/extensions 27 | - ./sonar/conf/:/opt/sonarqube/conf 28 | environment: 29 | - SONARQUBE_JDBC_USERNAME=root 30 | - SONARQUBE_JDBC_PASSWORD=hello123 31 | - SONARQUBE_JDBC_URL=jdbc:mysql://mysql:3306/sonarqube?useUnicode=true&characterEncoding=utf8&rewriteBatchedStatements=true&useConfigs=maxPerformance 32 | links: 33 | - mysql:mysql 34 | depends_on: 35 | - mysql 36 | restart: "no" 37 | -------------------------------------------------------------------------------- /containers/alpine/sonar/docker-compose.7.9.1.yml: -------------------------------------------------------------------------------- 1 | version: '2' 2 | 3 | services: 4 | # database service: postgres 5 | postgres: 6 | image: postgres:12-alpine 7 | volumes: 8 | - ./postgres/postgresql/:/var/lib/postgresql 9 | - ./postgres/data/:/var/lib/postgresql/data 10 | environment: 11 | - POSTGRES_USER=sonar 12 | - POSTGRES_PASSWORD=sonar 13 | restart: "no" 14 | 15 | 16 | # Security service: sonarqube 17 | sonarqube: 18 | image: liumiaocn/sonarqube:7.9.1 19 | ports: 20 | - "9000:9000" 21 | volumes: 22 | - ./sonar/data/:/opt/sonarqube/data 23 | - ./sonar/log/:/opt/sonarqube/log 24 | - ./sonar/extensions/:/opt/sonarqube/extensions 25 | - ./sonar/conf/:/opt/sonarqube/conf 26 | environment: 27 | - sonar.jdbc.url=jdbc:postgresql://postgres:5432/sonar 28 | restart: "no" 29 | -------------------------------------------------------------------------------- /containers/alpine/sonar/docker-compose.7.9.1.yml.1: -------------------------------------------------------------------------------- 1 | version: '2' 2 | 3 | services: 4 | # database service: postgres 5 | postgres: 6 | image: postgres:12-alpine 7 | networks: 8 | - sonarnet 9 | volumes: 10 | - ./postgres/postgresql/:/var/lib/postgresql 11 | - ./postgres/data/:/var/lib/postgresql/data 12 | environment: 13 | - POSTGRES_USER=sonar 14 | - POSTGRES_PASSWORD=sonar 15 | restart: "no" 16 | 17 | 18 | # Security service: sonarqube 19 | sonarqube: 20 | image: liumiaocn/sonarqube:7.9.1 21 | ports: 22 | - "9000:9000" 23 | networks: 24 | - sonarnet 25 | volumes: 26 | - ./sonar/data/:/opt/sonarqube/data 27 | - ./sonar/log/:/opt/sonarqube/log 28 | - ./sonar/extensions/:/opt/sonarqube/extensions 29 | - ./sonar/conf/:/opt/sonarqube/conf 30 | environment: 31 | - sonar.jdbc.url=jdbc:postgresql://postgres:5432/sonar 32 | restart: "no" 33 | 34 | networks: 35 | sonarnet: 36 | driver: bridge 37 | -------------------------------------------------------------------------------- /containers/alpine/sonar/docker-compose.8.0.yml: -------------------------------------------------------------------------------- 1 | version: '2' 2 | 3 | services: 4 | # database service: postgres 5 | postgres: 6 | image: postgres:12-alpine 7 | volumes: 8 | - ./postgres/postgresql/:/var/lib/postgresql 9 | - ./postgres/data/:/var/lib/postgresql/data 10 | environment: 11 | - POSTGRES_USER=sonar 12 | - POSTGRES_PASSWORD=sonar 13 | restart: "no" 14 | 15 | # Security service: sonarqube for postgresql 16 | sonarqube: 17 | image: liumiaocn/sonarqube:8.0 18 | ports: 19 | - "9000:9000" 20 | volumes: 21 | - ./sonarpostgres/data/:/opt/sonarqube/data 22 | - ./sonarpostgres/log/:/opt/sonarqube/log 23 | - ./sonarpostgres/extensions/:/opt/sonarqube/extensions 24 | - ./sonarpostgres/conf/:/opt/sonarqube/conf 25 | environment: 26 | - SONARQUBE_JDBC_USERNAME=sonar 27 | - SONARQUBE_JDBC_PASSWORD=sonar 28 | - SONARQUBE_JDBC_URL=jdbc:postgresql://postgres:5432/sonar 29 | restart: "no" 30 | -------------------------------------------------------------------------------- /containers/alpine/sonar/docker-compose.yml: -------------------------------------------------------------------------------- 1 | version: '2' 2 | 3 | services: 4 | # database service: mysql 5 | mysql: 6 | image: liumiaocn/mysql:5.7.16 7 | ports: 8 | - "3306:3306" 9 | volumes: 10 | - ./mysql/data/:/var/lib/mysql 11 | - ./mysql/conf.d/:/etc/mysql/conf.d 12 | environment: 13 | - MYSQL_ROOT_PASSWORD=hello123 14 | - MYSQL_DATABASE=sonarqube 15 | restart: "no" 16 | 17 | 18 | # Security service: sonarqube 19 | sonarqube: 20 | image: liumiaocn/sonarqube:7.9.1 21 | ports: 22 | - "9000:9000" 23 | volumes: 24 | - ./sonar/data/:/opt/sonarqube/data 25 | - ./sonar/log/:/opt/sonarqube/log 26 | - ./sonar/extensions/:/opt/sonarqube/extensions 27 | - ./sonar/conf/:/opt/sonarqube/conf 28 | environment: 29 | - SONARQUBE_JDBC_USERNAME=root 30 | - SONARQUBE_JDBC_PASSWORD=hello123 31 | - SONARQUBE_JDBC_URL=jdbc:mysql://mysql:3306/sonarqube?useUnicode=true&characterEncoding=utf8&rewriteBatchedStatements=true&useConfigs=maxPerformance 32 | links: 33 | - mysql:mysql 34 | depends_on: 35 | - mysql 36 | restart: "no" 37 | -------------------------------------------------------------------------------- /containers/alpine/sonar/run.SONARQUBE.5.6.5.sh: -------------------------------------------------------------------------------- 1 | #!/bin/sh 2 | 3 | set -e 4 | 5 | if [ "${1:0:1}" != '-' ]; then 6 | exec "$@" 7 | fi 8 | 9 | exec java -jar lib/sonar-application-$SONAR_VERSION.jar \ 10 | -Dsonar.log.console=true \ 11 | -Dsonar.jdbc.username="$SONARQUBE_JDBC_USERNAME" \ 12 | -Dsonar.jdbc.password="$SONARQUBE_JDBC_PASSWORD" \ 13 | -Dsonar.jdbc.url="$SONARQUBE_JDBC_URL" \ 14 | -Dsonar.web.javaAdditionalOpts="$SONARQUBE_WEB_JVM_OPTS -Djava.security.egd=file:/dev/./urandom" \ 15 | "$@" 16 | -------------------------------------------------------------------------------- /containers/alpine/sonar/run.SONARQUBE.6.7.1.sh: -------------------------------------------------------------------------------- 1 | #!/bin/sh 2 | 3 | set -e 4 | 5 | if [ "${1:0:1}" != '-' ]; then 6 | exec "$@" 7 | fi 8 | 9 | chown -R sonarqube:sonarqube $SONARQUBE_HOME 10 | exec su-exec sonarqube \ 11 | java -jar lib/sonar-application-$SONAR_VERSION.jar \ 12 | -Dsonar.log.console=true \ 13 | -Dsonar.jdbc.username="$SONARQUBE_JDBC_USERNAME" \ 14 | -Dsonar.jdbc.password="$SONARQUBE_JDBC_PASSWORD" \ 15 | -Dsonar.jdbc.url="$SONARQUBE_JDBC_URL" \ 16 | -Dsonar.web.javaAdditionalOpts="$SONARQUBE_WEB_JVM_OPTS -Djava.security.egd=file:/dev/./urandom" \ 17 | "$@" 18 | -------------------------------------------------------------------------------- /containers/alpine/sonar/run.SONARQUBE.7.0.sh: -------------------------------------------------------------------------------- 1 | #!/bin/sh 2 | 3 | set -e 4 | 5 | if [ "${1:0:1}" != '-' ]; then 6 | exec "$@" 7 | fi 8 | 9 | chown -R sonarqube:sonarqube $SONARQUBE_HOME 10 | exec su-exec sonarqube \ 11 | java -jar lib/sonar-application-$SONAR_VERSION.jar \ 12 | -Dsonar.log.console=true \ 13 | -Dsonar.jdbc.username="$SONARQUBE_JDBC_USERNAME" \ 14 | -Dsonar.jdbc.password="$SONARQUBE_JDBC_PASSWORD" \ 15 | -Dsonar.jdbc.url="$SONARQUBE_JDBC_URL" \ 16 | -Dsonar.web.javaAdditionalOpts="$SONARQUBE_WEB_JVM_OPTS -Djava.security.egd=file:/dev/./urandom" \ 17 | "$@" 18 | -------------------------------------------------------------------------------- /containers/alpine/sonar/run.SONARQUBE.7.1.sh: -------------------------------------------------------------------------------- 1 | #!/bin/sh 2 | 3 | set -e 4 | 5 | if [ "${1:0:1}" != '-' ]; then 6 | exec "$@" 7 | fi 8 | 9 | chown -R sonarqube:sonarqube $SONARQUBE_HOME 10 | exec su-exec sonarqube \ 11 | java -jar lib/sonar-application-$SONAR_VERSION.jar \ 12 | -Dsonar.log.console=true \ 13 | -Dsonar.jdbc.username="$SONARQUBE_JDBC_USERNAME" \ 14 | -Dsonar.jdbc.password="$SONARQUBE_JDBC_PASSWORD" \ 15 | -Dsonar.jdbc.url="$SONARQUBE_JDBC_URL" \ 16 | -Dsonar.web.javaAdditionalOpts="$SONARQUBE_WEB_JVM_OPTS -Djava.security.egd=file:/dev/./urandom" \ 17 | "$@" 18 | -------------------------------------------------------------------------------- /containers/alpine/sonar/run.sh: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env bash 2 | 3 | set -e 4 | 5 | if [ "${1:0:1}" != '-' ]; then 6 | exec "$@" 7 | fi 8 | 9 | # Parse Docker env vars to customize SonarQube 10 | # 11 | # e.g. Setting the env var sonar.jdbc.username=foo 12 | # 13 | # will cause SonarQube to be invoked with -Dsonar.jdbc.username=foo 14 | 15 | declare -a sq_opts 16 | 17 | while IFS='=' read -r envvar_key envvar_value 18 | do 19 | if [[ "$envvar_key" =~ sonar.* ]] || [[ "$envvar_key" =~ ldap.* ]]; then 20 | sq_opts+=("-D${envvar_key}=${envvar_value}") 21 | fi 22 | done < <(env) 23 | 24 | exec tail -F ./logs/es.log & # this tail on the elasticsearch logs is a temporary workaround, see https://github.com/docker-library/official-images/pull/6361#issuecomment-516184762 25 | exec java -jar lib/sonar-application-$SONAR_VERSION.jar \ 26 | -Dsonar.log.console=true \ 27 | -Dsonar.jdbc.username="$SONARQUBE_JDBC_USERNAME" \ 28 | -Dsonar.jdbc.password="$SONARQUBE_JDBC_PASSWORD" \ 29 | -Dsonar.jdbc.url="$SONARQUBE_JDBC_URL" \ 30 | -Dsonar.web.javaAdditionalOpts="$SONARQUBE_WEB_JVM_OPTS -Djava.security.egd=file:/dev/./urandom" \ 31 | "${sq_opts[@]}" \ 32 | "$@" 33 | -------------------------------------------------------------------------------- /containers/alpine/tornado/Dockerfile: -------------------------------------------------------------------------------- 1 | ############################################################################### 2 | # 3 | #IMAGE: tornado 4 | #VERSION: 5.0.2 5 | # 6 | ############################################################################### 7 | FROM alpine:latest 8 | 9 | ############################################################################### 10 | #MAINTAINER 11 | ############################################################################### 12 | MAINTAINER LiuMiao 13 | 14 | COPY daemon.py /usr/local/bin/daemon.py 15 | 16 | ############################################################################### 17 | #install 18 | ############################################################################### 19 | RUN apk upgrade --update-cache; \ 20 | apk add py-pip; \ 21 | pip install --upgrade pip; \ 22 | pip install tornado; \ 23 | rm -rf /tmp/* /var/cache/apk/* 24 | 25 | CMD python /usr/local/bin/daemon.py "Default Service" 26 | -------------------------------------------------------------------------------- /containers/alpine/tornado/Dockerfile.greeting: -------------------------------------------------------------------------------- 1 | ############################################################################### 2 | # 3 | #IMAGE: tornado 4 | #VERSION: 5.0.2 5 | # 6 | ############################################################################### 7 | FROM alpine:latest 8 | 9 | ############################################################################### 10 | #MAINTAINER 11 | ############################################################################### 12 | MAINTAINER LiuMiao 13 | 14 | COPY daemon-greeting.py /usr/local/bin/daemon-greeting.py 15 | 16 | ############################################################################### 17 | #install 18 | ############################################################################### 19 | RUN apk upgrade --update-cache; \ 20 | apk add py-pip; \ 21 | pip install --upgrade pip; \ 22 | pip install tornado; \ 23 | rm -rf /tmp/* /var/cache/apk/* 24 | 25 | CMD python /usr/local/bin/daemon-greeting.py "Default Service" 26 | -------------------------------------------------------------------------------- /containers/alpine/tornado/daemon-greeting.py: -------------------------------------------------------------------------------- 1 | import tornado.ioloop 2 | import tornado.web 3 | import sys 4 | import socket 5 | 6 | class MainHandler(tornado.web.RequestHandler): 7 | def get(self): 8 | host_name = socket.gethostname() 9 | self.write("Host Name: " + host_name + " : " + sys.argv[1] + "\n") 10 | 11 | def make_app(): 12 | return tornado.web.Application([ 13 | (r"/", MainHandler), 14 | ]) 15 | 16 | if __name__ == "__main__": 17 | app = make_app() 18 | app.listen(sys.argv[2]) 19 | tornado.ioloop.IOLoop.current().start() 20 | -------------------------------------------------------------------------------- /containers/alpine/tornado/daemon.py: -------------------------------------------------------------------------------- 1 | import tornado.ioloop 2 | import tornado.web 3 | import sys 4 | 5 | class MainHandler(tornado.web.RequestHandler): 6 | def get(self): 7 | self.write("Hello, Service :" + sys.argv[1] + "\n") 8 | #print "Hello, Service :", sys.argv[1] 9 | 10 | def make_app(): 11 | return tornado.web.Application([ 12 | (r"/", MainHandler), 13 | ]) 14 | 15 | if __name__ == "__main__": 16 | app = make_app() 17 | app.listen(8080) 18 | tornado.ioloop.IOLoop.current().start() 19 | -------------------------------------------------------------------------------- /containers/standard/android/Demo/Demo.iml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | -------------------------------------------------------------------------------- /containers/standard/android/Demo/app/.DS_Store: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/liumiaocn/easypack/1b1ad856ab2a01441721905e6f4d2c8895a897a6/containers/standard/android/Demo/app/.DS_Store -------------------------------------------------------------------------------- /containers/standard/android/Demo/app/.gitignore: -------------------------------------------------------------------------------- 1 | /build 2 | -------------------------------------------------------------------------------- /containers/standard/android/Demo/app/proguard-rules.pro: -------------------------------------------------------------------------------- 1 | # Add project specific ProGuard rules here. 2 | # You can control the set of applied configuration files using the 3 | # proguardFiles setting in build.gradle. 4 | # 5 | # For more details, see 6 | # http://developer.android.com/guide/developing/tools/proguard.html 7 | 8 | # If your project uses WebView with JS, uncomment the following 9 | # and specify the fully qualified class name to the JavaScript interface 10 | # class: 11 | #-keepclassmembers class fqcn.of.javascript.interface.for.webview { 12 | # public *; 13 | #} 14 | 15 | # Uncomment this to preserve the line number information for 16 | # debugging stack traces. 17 | #-keepattributes SourceFile,LineNumberTable 18 | 19 | # If you keep the line number information, uncomment this to 20 | # hide the original source file name. 21 | #-renamesourcefileattribute SourceFile 22 | -------------------------------------------------------------------------------- /containers/standard/android/Demo/app/src/androidTest/java/com/liumiao/dmo/ExampleInstrumentedTest.java: -------------------------------------------------------------------------------- 1 | package com.liumiao.dmo; 2 | 3 | import android.content.Context; 4 | 5 | import androidx.test.platform.app.InstrumentationRegistry; 6 | import androidx.test.ext.junit.runners.AndroidJUnit4; 7 | 8 | import org.junit.Test; 9 | import org.junit.runner.RunWith; 10 | 11 | import static org.junit.Assert.*; 12 | 13 | /** 14 | * Instrumented test, which will execute on an Android device. 15 | * 16 | * @see Testing documentation 17 | */ 18 | @RunWith(AndroidJUnit4.class) 19 | public class ExampleInstrumentedTest { 20 | @Test 21 | public void useAppContext() { 22 | // Context of the app under test. 23 | Context appContext = InstrumentationRegistry.getInstrumentation().getTargetContext(); 24 | 25 | assertEquals("com.liumiao.dmo", appContext.getPackageName()); 26 | } 27 | } 28 | -------------------------------------------------------------------------------- /containers/standard/android/Demo/app/src/main/AndroidManifest.xml: -------------------------------------------------------------------------------- 1 | 2 | 4 | 5 | 12 | 16 | 17 | 18 | 19 | 20 | 21 | 22 | 23 | 24 | -------------------------------------------------------------------------------- /containers/standard/android/Demo/app/src/main/res/layout/content_main.xml: -------------------------------------------------------------------------------- 1 | 2 | 10 | 11 | 19 | 20 | -------------------------------------------------------------------------------- /containers/standard/android/Demo/app/src/main/res/menu/menu_main.xml: -------------------------------------------------------------------------------- 1 | 5 | 10 | 11 | -------------------------------------------------------------------------------- /containers/standard/android/Demo/app/src/main/res/mipmap-anydpi-v26/ic_launcher.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | -------------------------------------------------------------------------------- /containers/standard/android/Demo/app/src/main/res/mipmap-anydpi-v26/ic_launcher_round.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | -------------------------------------------------------------------------------- /containers/standard/android/Demo/app/src/main/res/mipmap-hdpi/ic_launcher.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/liumiaocn/easypack/1b1ad856ab2a01441721905e6f4d2c8895a897a6/containers/standard/android/Demo/app/src/main/res/mipmap-hdpi/ic_launcher.png -------------------------------------------------------------------------------- /containers/standard/android/Demo/app/src/main/res/mipmap-hdpi/ic_launcher_round.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/liumiaocn/easypack/1b1ad856ab2a01441721905e6f4d2c8895a897a6/containers/standard/android/Demo/app/src/main/res/mipmap-hdpi/ic_launcher_round.png -------------------------------------------------------------------------------- /containers/standard/android/Demo/app/src/main/res/mipmap-mdpi/ic_launcher.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/liumiaocn/easypack/1b1ad856ab2a01441721905e6f4d2c8895a897a6/containers/standard/android/Demo/app/src/main/res/mipmap-mdpi/ic_launcher.png -------------------------------------------------------------------------------- /containers/standard/android/Demo/app/src/main/res/mipmap-mdpi/ic_launcher_round.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/liumiaocn/easypack/1b1ad856ab2a01441721905e6f4d2c8895a897a6/containers/standard/android/Demo/app/src/main/res/mipmap-mdpi/ic_launcher_round.png -------------------------------------------------------------------------------- /containers/standard/android/Demo/app/src/main/res/mipmap-xhdpi/ic_launcher.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/liumiaocn/easypack/1b1ad856ab2a01441721905e6f4d2c8895a897a6/containers/standard/android/Demo/app/src/main/res/mipmap-xhdpi/ic_launcher.png -------------------------------------------------------------------------------- /containers/standard/android/Demo/app/src/main/res/mipmap-xhdpi/ic_launcher_round.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/liumiaocn/easypack/1b1ad856ab2a01441721905e6f4d2c8895a897a6/containers/standard/android/Demo/app/src/main/res/mipmap-xhdpi/ic_launcher_round.png -------------------------------------------------------------------------------- /containers/standard/android/Demo/app/src/main/res/mipmap-xxhdpi/ic_launcher.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/liumiaocn/easypack/1b1ad856ab2a01441721905e6f4d2c8895a897a6/containers/standard/android/Demo/app/src/main/res/mipmap-xxhdpi/ic_launcher.png -------------------------------------------------------------------------------- /containers/standard/android/Demo/app/src/main/res/mipmap-xxhdpi/ic_launcher_round.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/liumiaocn/easypack/1b1ad856ab2a01441721905e6f4d2c8895a897a6/containers/standard/android/Demo/app/src/main/res/mipmap-xxhdpi/ic_launcher_round.png -------------------------------------------------------------------------------- /containers/standard/android/Demo/app/src/main/res/mipmap-xxxhdpi/ic_launcher.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/liumiaocn/easypack/1b1ad856ab2a01441721905e6f4d2c8895a897a6/containers/standard/android/Demo/app/src/main/res/mipmap-xxxhdpi/ic_launcher.png -------------------------------------------------------------------------------- /containers/standard/android/Demo/app/src/main/res/mipmap-xxxhdpi/ic_launcher_round.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/liumiaocn/easypack/1b1ad856ab2a01441721905e6f4d2c8895a897a6/containers/standard/android/Demo/app/src/main/res/mipmap-xxxhdpi/ic_launcher_round.png -------------------------------------------------------------------------------- /containers/standard/android/Demo/app/src/main/res/values/colors.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | #008577 4 | #00574B 5 | #D81B60 6 | 7 | -------------------------------------------------------------------------------- /containers/standard/android/Demo/app/src/main/res/values/dimens.xml: -------------------------------------------------------------------------------- 1 | 2 | 16dp 3 | 4 | -------------------------------------------------------------------------------- /containers/standard/android/Demo/app/src/main/res/values/strings.xml: -------------------------------------------------------------------------------- 1 | 2 | Demo 3 | Settings 4 | 5 | -------------------------------------------------------------------------------- /containers/standard/android/Demo/app/src/main/res/values/styles.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 10 | 11 | 15 | 16 |