├── .env.jboss_fuse ├── README.md ├── .gitignore ├── dev.yml ├── Dockerfile ├── install.sh └── LICENSE /.env.jboss_fuse: -------------------------------------------------------------------------------- 1 | PORT=3000 2 | PUMA_WORKERS=1 3 | MIN_THREADS=4 4 | MAX_THREADS=16 5 | SECRET_KEY_BASE= 6 | AWS_REGION=us-west-2 7 | -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- 1 | # docker-fuse 2 | 3 | # Bash 4 | ``` 5 | sudo docker exec -i -t dockerfuse_jboss-fuse-redhat_1 bash 6 | ``` 7 | 8 | #Build 9 | ``` 10 | docker-compose -f dev.yml build 11 | ``` 12 | 13 | # Up 14 | ``` 15 | docker-compose -f dev.yml up 16 | ``` 17 | -------------------------------------------------------------------------------- /.gitignore: -------------------------------------------------------------------------------- 1 | *.class 2 | 3 | # Mobile Tools for Java (J2ME) 4 | .mtj.tmp/ 5 | 6 | # Package Files # 7 | *.jar 8 | *.war 9 | *.ear 10 | *.swp 11 | # virtual machine crash logs, see http://www.java.com/en/download/help/error_hotspot.xml 12 | hs_err_pid* 13 | .*~ 14 | opt/ 15 | downloads/ 16 | -------------------------------------------------------------------------------- /dev.yml: -------------------------------------------------------------------------------- 1 | jboss-fuse-redhat: 2 | image: i452/jboss-fuse-6.1.0.redhat-379:latest 3 | # pid: "jboss-fuse-docker" 4 | # command: /bin/bash 5 | container_name: jboss-fuse-redhat 6 | # build: . 7 | domainname: ihor-fuse.com 8 | hostname: ihor-fuse 9 | # ipc: host 10 | # mac_address: 02:42:ac:11:65:43 11 | dns: 12 | - 192.168.1.2 13 | - 192.168.110.3 14 | - 192.168.110.10 15 | - 8.8.8.8 16 | - 172.16.42.1 17 | ports: 18 | - 9789:8181 19 | - 9720:8101 20 | # - "127.0.0.1:8181:8181" 21 | # links: 22 | # - db 23 | environment: 24 | - ENVIRONMENT=dev #and vice-versa for qa 25 | # - FUSE_HOME=/opt/jjjj 26 | - DEBUG=false 27 | env_file: 28 | - ".env.jboss_fuse" 29 | extra_hosts: 30 | - "google:8.8.8.8" 31 | # - "aaaa:50.31.209.229" 32 | 33 | #jenkins: 34 | # image: jenkins:latest 35 | # container_name: jenkins 36 | # domainname: ihor-jenkins.com 37 | # hostname: ihor-jenkins 38 | # dns: 39 | # - 192.168.1.2 40 | # - 192.168.110.3 41 | # - 192.168.110.10 42 | # volumes: 43 | # - ./jenkins_data:/var/jenkins_home 44 | # ports: 45 | # - "8080:8080" 46 | #db: 47 | # image: library/mysql:5.6.22 48 | # ports: 49 | # - "13306:3306" 50 | # env_file: 51 | ## - '.env.db' 52 | #dbdata: 53 | # image: postgres:9.4.4 54 | #db: 55 | # image: postgres:9.4.4 56 | # volumes_from: 57 | # - dbdata 58 | # ports: 59 | # - "7777:5432" 60 | -------------------------------------------------------------------------------- /Dockerfile: -------------------------------------------------------------------------------- 1 | # Version: 0.0.1 2 | FROM i452/jboss-fuse-6.1.0.redhat-379:virgin-root 3 | MAINTAINER Ihor Lavryniuk 4 | 5 | #ENV FUSE_VERSION 6.1.0.redhat-379 6 | #ENV FUSE_HOME /opt/jboss/jboss-fuse-$FUSE_VERSION 7 | # If the container is launched with re-mapped ports, these ENV vars should 8 | # be set to the remapped values. 9 | 10 | #WORKDIR / 11 | # Install fuse in the image. 12 | #COPY install.sh /opt/install.sh 13 | #RUN /opt/install.sh 14 | 15 | #USER root 16 | #RUN apt-get update && apt-get install -y tree 17 | #RUN set -ex; \ 18 | # yum install -y nmap net-tools openssh-clients; yum clean all; 19 | #RUN iptables -I INPUT -p tcp -m tcp --dport 8101 -j ACCEPT; \ 20 | # service iptables save; 21 | # service iptables restart 22 | RUN sed -i "\$ashell:source https://raw.githubusercontent.com/452/shscripts/master/.bashrcFuse.sh" /opt/jboss-fuse-6.1.0.redhat-379/etc/shell.init.script 23 | RUN sed -i "\$asource <(curl -s https://raw.githubusercontent.com/452/shscripts/master/.bashrc)" /root/.bashrc 24 | RUN sed -i "\$afuse=fuse,admin" /opt/jboss-fuse-6.1.0.redhat-379/etc/users.properties 25 | #EXPOSE 8080 8181 8182 8101 1099 44444 61616 1883 5672 61613 61617 8883 5671 61614 26 | # 27 | # The following directories can hold config/data, so lets suggest the user 28 | # mount them as volumes. 29 | #VOLUME /opt/jboss-fuse-6.1.0.redhat-379/bin 30 | #VOLUME /opt/jboss-fuse-6.1.0.redhat-379/etc 31 | #VOLUME /opt/jboss-fuse-6.1.0.redhat-379/data 32 | #VOLUME /opt/jboss-fuse-6.1.0.redhat-379/deploy 33 | 34 | # lets default to the jboss-fuse dir so folks can more easily navigate to around the server install 35 | #ENTRYPOINT ["/opt/jboss-fuse-6.1.0.redhat-379/bin/fuse"] 36 | #CMD ["server"] 37 | 38 | #ENTRYPOINT ["/bin/bash"] 39 | -------------------------------------------------------------------------------- /install.sh: -------------------------------------------------------------------------------- 1 | #!/bin/bash 2 | # 3 | # We configure the distro, here before it gets imported into docker 4 | # to reduce the number of UFS layers that are needed for the Docker container. 5 | # 6 | 7 | # Adjust the following env vars if needed. 8 | FUSE_ARTIFACT_ID=jboss-fuse-full 9 | FUSE_VERSION=6.1.0.redhat-379 10 | FUSE_DISTRO_URL=http://origin-repository.jboss.org/nexus/content/groups/ea/org/jboss/fuse/${FUSE_ARTIFACT_ID}/${FUSE_VERSION}/${FUSE_ARTIFACT_ID}-${FUSE_VERSION}.zip 11 | 12 | # Lets fail fast if any command in this script does succeed. 13 | set -e 14 | 15 | # 16 | # Lets switch to the /opt/jboss dir 17 | # 18 | cd /opt 19 | 20 | # Download and extract the distro 21 | #curl -O ${FUSE_DISTRO_URL} 22 | wget -c https://access.cdn.redhat.com/content/origin/files/sha256/d4/d4222f5ed50d5d465bd105f5f2dbaee3ad0adda672bba7a18b0e262ef57458a5/jboss-fuse-full-6.1.0.redhat-379.zip?_auth_=1447707166_3088d181501f584e132de3228af16092 23 | jar -xvf ${FUSE_ARTIFACT_ID}-${FUSE_VERSION}.zip 24 | #rm ${FUSE_ARTIFACT_ID}-${FUSE_VERSION}.zip 25 | mv jboss-fuse-full-${FUSE_VERSION} jboss-fuse-${FUSE_VERSION} 26 | chmod a+x jboss-fuse/bin/* 27 | rm jboss-fuse/bin/*.bat jboss-fuse/bin/start jboss-fuse/bin/stop jboss-fuse/bin/status jboss-fuse/bin/patch 28 | 29 | # Lets remove some bits of the distro which just add extra weight in a docker image. 30 | rm -rf jboss-fuse/extras 31 | rm -rf jboss-fuse/quickstarts 32 | 33 | # 34 | # Let the karaf container name/id come from setting the FUSE_KARAF_NAME && FUSE_RUNTIME_ID env vars 35 | # default to using the container hostname. 36 | sed -i -e 's/environment.prefix=FABRIC8_/environment.prefix=FUSE_/' jboss-fuse/etc/system.properties 37 | sed -i -e '/karaf.name = root/d' jboss-fuse/etc/system.properties 38 | sed -i -e '/runtime.id=/d' jboss-fuse/etc/system.properties 39 | echo ' 40 | if [ -z "$FUSE_KARAF_NAME" ]; then 41 | export FUSE_KARAF_NAME="$HOSTNAME" 42 | fi 43 | if [ -z "$FUSE_RUNTIME_ID" ]; then 44 | export FUSE_RUNTIME_ID="$FUSE_KARAF_NAME" 45 | fi 46 | export KARAF_OPTS="-Dkaraf.name=${FUSE_KARAF_NAME} -Druntime.id=${FUSE_RUNTIME_ID}" 47 | '>> jboss-fuse/bin/setenv 48 | 49 | # 50 | # Move the bundle cache and tmp directories outside of the data dir so it's not persisted between container runs 51 | # 52 | mv jboss-fuse/data/tmp jboss-fuse/tmp 53 | echo ' 54 | org.osgi.framework.storage=${karaf.base}/tmp/cache 55 | '>> jboss-fuse/etc/config.properties 56 | sed -i -e 's/-Djava.io.tmpdir="$KARAF_DATA\/tmp"/-Djava.io.tmpdir="$KARAF_BASE\/tmp"/' jboss-fuse/bin/karaf 57 | sed -i -e 's/-Djava.io.tmpdir="$KARAF_DATA\/tmp"/-Djava.io.tmpdir="$KARAF_BASE\/tmp"/' jboss-fuse/bin/fuse 58 | sed -i -e 's/-Djava.io.tmpdir="$KARAF_DATA\/tmp"/-Djava.io.tmpdir="$KARAF_BASE\/tmp"/' jboss-fuse/bin/client 59 | sed -i -e 's/-Djava.io.tmpdir="$KARAF_DATA\/tmp"/-Djava.io.tmpdir="$KARAF_BASE\/tmp"/' jboss-fuse/bin/admin 60 | sed -i -e 's/${karaf.data}\/generated-bundles/${karaf.base}\/tmp\/generated-bundles/' jboss-fuse/etc/org.apache.felix.fileinstall-deploy.cfg 61 | 62 | # lets remove the karaf.delay.console=true to disable the progress bar 63 | sed -i -e 's/karaf.delay.console=true/karaf.delay.console=false/' jboss-fuse/etc/config.properties 64 | echo ' 65 | # Root logger 66 | log4j.rootLogger=INFO, stdout, osgi:*VmLogAppender 67 | log4j.throwableRenderer=org.apache.log4j.OsgiThrowableRenderer 68 | # CONSOLE appender not used by default 69 | log4j.appender.stdout=org.apache.log4j.ConsoleAppender 70 | log4j.appender.stdout.layout=org.apache.log4j.PatternLayout 71 | log4j.appender.stdout.layout.ConversionPattern=%d{ABSOLUTE} | %-5.5p | %-16.16t | %-32.32c{1} | %X{bundle.id} - %X{bundle.name} - %X{bundle.version} | %m%n 72 | ' > jboss-fuse/etc/org.ops4j.pax.logging.cfg 73 | 74 | echo ' 75 | bind.address=0.0.0.0 76 | '>> jboss-fuse/etc/system.properties 77 | echo '' >> jboss-fuse/etc/users.properties 78 | 79 | rm /opt/install.sh 80 | -------------------------------------------------------------------------------- /LICENSE: -------------------------------------------------------------------------------- 1 | Apache License 2 | Version 2.0, January 2004 3 | http://www.apache.org/licenses/ 4 | 5 | TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION 6 | 7 | 1. Definitions. 8 | 9 | "License" shall mean the terms and conditions for use, reproduction, 10 | and distribution as defined by Sections 1 through 9 of this document. 11 | 12 | "Licensor" shall mean the copyright owner or entity authorized by 13 | the copyright owner that is granting the License. 14 | 15 | "Legal Entity" shall mean the union of the acting entity and all 16 | other entities that control, are controlled by, or are under common 17 | control with that entity. For the purposes of this definition, 18 | "control" means (i) the power, direct or indirect, to cause the 19 | direction or management of such entity, whether by contract or 20 | otherwise, or (ii) ownership of fifty percent (50%) or more of the 21 | outstanding shares, or (iii) beneficial ownership of such entity. 22 | 23 | "You" (or "Your") shall mean an individual or Legal Entity 24 | exercising permissions granted by this License. 25 | 26 | "Source" form shall mean the preferred form for making modifications, 27 | including but not limited to software source code, documentation 28 | source, and configuration files. 29 | 30 | "Object" form shall mean any form resulting from mechanical 31 | transformation or translation of a Source form, including but 32 | not limited to compiled object code, generated documentation, 33 | and conversions to other media types. 34 | 35 | "Work" shall mean the work of authorship, whether in Source or 36 | Object form, made available under the License, as indicated by a 37 | copyright notice that is included in or attached to the work 38 | (an example is provided in the Appendix below). 39 | 40 | "Derivative Works" shall mean any work, whether in Source or Object 41 | form, that is based on (or derived from) the Work and for which the 42 | editorial revisions, annotations, elaborations, or other modifications 43 | represent, as a whole, an original work of authorship. For the purposes 44 | of this License, Derivative Works shall not include works that remain 45 | separable from, or merely link (or bind by name) to the interfaces of, 46 | the Work and Derivative Works thereof. 47 | 48 | "Contribution" shall mean any work of authorship, including 49 | the original version of the Work and any modifications or additions 50 | to that Work or Derivative Works thereof, that is intentionally 51 | submitted to Licensor for inclusion in the Work by the copyright owner 52 | or by an individual or Legal Entity authorized to submit on behalf of 53 | the copyright owner. For the purposes of this definition, "submitted" 54 | means any form of electronic, verbal, or written communication sent 55 | to the Licensor or its representatives, including but not limited to 56 | communication on electronic mailing lists, source code control systems, 57 | and issue tracking systems that are managed by, or on behalf of, the 58 | Licensor for the purpose of discussing and improving the Work, but 59 | excluding communication that is conspicuously marked or otherwise 60 | designated in writing by the copyright owner as "Not a Contribution." 61 | 62 | "Contributor" shall mean Licensor and any individual or Legal Entity 63 | on behalf of whom a Contribution has been received by Licensor and 64 | subsequently incorporated within the Work. 65 | 66 | 2. Grant of Copyright License. Subject to the terms and conditions of 67 | this License, each Contributor hereby grants to You a perpetual, 68 | worldwide, non-exclusive, no-charge, royalty-free, irrevocable 69 | copyright license to reproduce, prepare Derivative Works of, 70 | publicly display, publicly perform, sublicense, and distribute the 71 | Work and such Derivative Works in Source or Object form. 72 | 73 | 3. Grant of Patent License. Subject to the terms and conditions of 74 | this License, each Contributor hereby grants to You a perpetual, 75 | worldwide, non-exclusive, no-charge, royalty-free, irrevocable 76 | (except as stated in this section) patent license to make, have made, 77 | use, offer to sell, sell, import, and otherwise transfer the Work, 78 | where such license applies only to those patent claims licensable 79 | by such Contributor that are necessarily infringed by their 80 | Contribution(s) alone or by combination of their Contribution(s) 81 | with the Work to which such Contribution(s) was submitted. If You 82 | institute patent litigation against any entity (including a 83 | cross-claim or counterclaim in a lawsuit) alleging that the Work 84 | or a Contribution incorporated within the Work constitutes direct 85 | or contributory patent infringement, then any patent licenses 86 | granted to You under this License for that Work shall terminate 87 | as of the date such litigation is filed. 88 | 89 | 4. Redistribution. You may reproduce and distribute copies of the 90 | Work or Derivative Works thereof in any medium, with or without 91 | modifications, and in Source or Object form, provided that You 92 | meet the following conditions: 93 | 94 | (a) You must give any other recipients of the Work or 95 | Derivative Works a copy of this License; and 96 | 97 | (b) You must cause any modified files to carry prominent notices 98 | stating that You changed the files; and 99 | 100 | (c) You must retain, in the Source form of any Derivative Works 101 | that You distribute, all copyright, patent, trademark, and 102 | attribution notices from the Source form of the Work, 103 | excluding those notices that do not pertain to any part of 104 | the Derivative Works; and 105 | 106 | (d) If the Work includes a "NOTICE" text file as part of its 107 | distribution, then any Derivative Works that You distribute must 108 | include a readable copy of the attribution notices contained 109 | within such NOTICE file, excluding those notices that do not 110 | pertain to any part of the Derivative Works, in at least one 111 | of the following places: within a NOTICE text file distributed 112 | as part of the Derivative Works; within the Source form or 113 | documentation, if provided along with the Derivative Works; or, 114 | within a display generated by the Derivative Works, if and 115 | wherever such third-party notices normally appear. The contents 116 | of the NOTICE file are for informational purposes only and 117 | do not modify the License. You may add Your own attribution 118 | notices within Derivative Works that You distribute, alongside 119 | or as an addendum to the NOTICE text from the Work, provided 120 | that such additional attribution notices cannot be construed 121 | as modifying the License. 122 | 123 | You may add Your own copyright statement to Your modifications and 124 | may provide additional or different license terms and conditions 125 | for use, reproduction, or distribution of Your modifications, or 126 | for any such Derivative Works as a whole, provided Your use, 127 | reproduction, and distribution of the Work otherwise complies with 128 | the conditions stated in this License. 129 | 130 | 5. Submission of Contributions. Unless You explicitly state otherwise, 131 | any Contribution intentionally submitted for inclusion in the Work 132 | by You to the Licensor shall be under the terms and conditions of 133 | this License, without any additional terms or conditions. 134 | Notwithstanding the above, nothing herein shall supersede or modify 135 | the terms of any separate license agreement you may have executed 136 | with Licensor regarding such Contributions. 137 | 138 | 6. Trademarks. This License does not grant permission to use the trade 139 | names, trademarks, service marks, or product names of the Licensor, 140 | except as required for reasonable and customary use in describing the 141 | origin of the Work and reproducing the content of the NOTICE file. 142 | 143 | 7. Disclaimer of Warranty. Unless required by applicable law or 144 | agreed to in writing, Licensor provides the Work (and each 145 | Contributor provides its Contributions) on an "AS IS" BASIS, 146 | WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or 147 | implied, including, without limitation, any warranties or conditions 148 | of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A 149 | PARTICULAR PURPOSE. You are solely responsible for determining the 150 | appropriateness of using or redistributing the Work and assume any 151 | risks associated with Your exercise of permissions under this License. 152 | 153 | 8. Limitation of Liability. In no event and under no legal theory, 154 | whether in tort (including negligence), contract, or otherwise, 155 | unless required by applicable law (such as deliberate and grossly 156 | negligent acts) or agreed to in writing, shall any Contributor be 157 | liable to You for damages, including any direct, indirect, special, 158 | incidental, or consequential damages of any character arising as a 159 | result of this License or out of the use or inability to use the 160 | Work (including but not limited to damages for loss of goodwill, 161 | work stoppage, computer failure or malfunction, or any and all 162 | other commercial damages or losses), even if such Contributor 163 | has been advised of the possibility of such damages. 164 | 165 | 9. Accepting Warranty or Additional Liability. While redistributing 166 | the Work or Derivative Works thereof, You may choose to offer, 167 | and charge a fee for, acceptance of support, warranty, indemnity, 168 | or other liability obligations and/or rights consistent with this 169 | License. However, in accepting such obligations, You may act only 170 | on Your own behalf and on Your sole responsibility, not on behalf 171 | of any other Contributor, and only if You agree to indemnify, 172 | defend, and hold each Contributor harmless for any liability 173 | incurred by, or claims asserted against, such Contributor by reason 174 | of your accepting any such warranty or additional liability. 175 | 176 | END OF TERMS AND CONDITIONS 177 | 178 | APPENDIX: How to apply the Apache License to your work. 179 | 180 | To apply the Apache License to your work, attach the following 181 | boilerplate notice, with the fields enclosed by brackets "{}" 182 | replaced with your own identifying information. (Don't include 183 | the brackets!) The text should be enclosed in the appropriate 184 | comment syntax for the file format. We also recommend that a 185 | file or class name and description of purpose be included on the 186 | same "printed page" as the copyright notice for easier 187 | identification within third-party archives. 188 | 189 | Copyright {yyyy} {name of copyright owner} 190 | 191 | Licensed under the Apache License, Version 2.0 (the "License"); 192 | you may not use this file except in compliance with the License. 193 | You may obtain a copy of the License at 194 | 195 | http://www.apache.org/licenses/LICENSE-2.0 196 | 197 | Unless required by applicable law or agreed to in writing, software 198 | distributed under the License is distributed on an "AS IS" BASIS, 199 | WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 200 | See the License for the specific language governing permissions and 201 | limitations under the License. 202 | 203 | --------------------------------------------------------------------------------