using centos8 for the default Dockerfile, to get a gdb that display source code when running on OpenShift
This commit is contained in:
		
							
								
								
									
										39
									
								
								Dockerfile
									
									
									
									
									
								
							
							
						
						
									
										39
									
								
								Dockerfile
									
									
									
									
									
								
							| @@ -1,39 +0,0 @@ | |||||||
| FROM alpine:3.11 as build |  | ||||||
|  |  | ||||||
| RUN apk add --no-cache gcc g++ musl-dev linux-headers cmake openssl-dev  |  | ||||||
| RUN apk add --no-cache make |  | ||||||
| RUN apk add --no-cache zlib-dev |  | ||||||
|  |  | ||||||
| RUN addgroup -S app && adduser -S -G app app  |  | ||||||
| RUN chown -R app:app /opt |  | ||||||
| RUN chown -R app:app /usr/local |  | ||||||
|  |  | ||||||
| # There is a bug in CMake where we cannot build from the root top folder |  | ||||||
| # So we build from /opt |  | ||||||
| COPY --chown=app:app . /opt |  | ||||||
| WORKDIR /opt |  | ||||||
|  |  | ||||||
| USER app |  | ||||||
| RUN [ "make", "ws_install" ] |  | ||||||
| RUN [ "rm", "-rf", "build" ] |  | ||||||
|  |  | ||||||
| FROM alpine:3.11 as runtime |  | ||||||
|  |  | ||||||
| RUN apk add --no-cache libstdc++ |  | ||||||
| RUN apk add --no-cache strace |  | ||||||
|  |  | ||||||
| RUN addgroup -S app && adduser -S -G app app  |  | ||||||
| COPY --chown=app:app --from=build /usr/local/bin/ws /usr/local/bin/ws |  | ||||||
| RUN chmod +x /usr/local/bin/ws |  | ||||||
| RUN ldd /usr/local/bin/ws |  | ||||||
|  |  | ||||||
| # Copy source code for gcc |  | ||||||
| COPY --chown=app:app --from=build /opt /opt |  | ||||||
|  |  | ||||||
| # Now run in usermode |  | ||||||
| USER app |  | ||||||
| WORKDIR /home/app |  | ||||||
|  |  | ||||||
| ENTRYPOINT ["ws"] |  | ||||||
| EXPOSE 8008 |  | ||||||
| CMD ["--help"] |  | ||||||
							
								
								
									
										1
									
								
								Dockerfile
									
									
									
									
									
										Symbolic link
									
								
							
							
						
						
									
										1
									
								
								Dockerfile
									
									
									
									
									
										Symbolic link
									
								
							| @@ -0,0 +1 @@ | |||||||
|  | docker/Dockerfile.centos | ||||||
| @@ -1,4 +1,4 @@ | |||||||
| FROM alpine as build | FROM alpine:3.11 as build | ||||||
|  |  | ||||||
| RUN apk add --no-cache gcc g++ musl-dev linux-headers cmake openssl-dev  | RUN apk add --no-cache gcc g++ musl-dev linux-headers cmake openssl-dev  | ||||||
| RUN apk add --no-cache make | RUN apk add --no-cache make | ||||||
| @@ -15,20 +15,25 @@ WORKDIR /opt | |||||||
|  |  | ||||||
| USER app | USER app | ||||||
| RUN [ "make", "ws_install" ] | RUN [ "make", "ws_install" ] | ||||||
|  | RUN [ "rm", "-rf", "build" ] | ||||||
|  |  | ||||||
| FROM alpine as runtime | FROM alpine:3.11 as runtime | ||||||
|  |  | ||||||
| RUN apk add --no-cache libstdc++ | RUN apk add --no-cache libstdc++ | ||||||
|  | RUN apk add --no-cache strace | ||||||
|  |  | ||||||
| RUN addgroup -S app && adduser -S -G app app  | RUN addgroup -S app && adduser -S -G app app  | ||||||
| COPY --chown=app:app --from=build /usr/local/bin/ws /usr/local/bin/ws | COPY --chown=app:app --from=build /usr/local/bin/ws /usr/local/bin/ws | ||||||
| RUN chmod +x /usr/local/bin/ws | RUN chmod +x /usr/local/bin/ws | ||||||
| RUN ldd /usr/local/bin/ws | RUN ldd /usr/local/bin/ws | ||||||
|  |  | ||||||
|  | # Copy source code for gcc | ||||||
|  | COPY --chown=app:app --from=build /opt /opt | ||||||
|  |  | ||||||
| # Now run in usermode | # Now run in usermode | ||||||
| USER app | USER app | ||||||
| WORKDIR /home/app | WORKDIR /home/app | ||||||
|  |  | ||||||
| ENTRYPOINT ["ws"] | ENTRYPOINT ["ws"] | ||||||
| EXPOSE 8008 | EXPOSE 8008 | ||||||
| CMD ["--help"] | C | ||||||
|   | |||||||
							
								
								
									
										35
									
								
								docker/Dockerfile.centos
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										35
									
								
								docker/Dockerfile.centos
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,35 @@ | |||||||
|  | FROM centos:8 as build | ||||||
|  |  | ||||||
|  | RUN yum install -y gcc-c++ make cmake zlib-devel openssl-devel redhat-rpm-config  | ||||||
|  |  | ||||||
|  | RUN groupadd app && useradd -g app app | ||||||
|  | RUN chown -R app:app /opt | ||||||
|  | RUN chown -R app:app /usr/local | ||||||
|  |  | ||||||
|  | # There is a bug in CMake where we cannot build from the root top folder | ||||||
|  | # So we build from /opt | ||||||
|  | COPY --chown=app:app . /opt | ||||||
|  | WORKDIR /opt | ||||||
|  |  | ||||||
|  | USER app | ||||||
|  | RUN [ "make", "ws_install" ] | ||||||
|  | RUN [ "rm", "-rf", "build" ] | ||||||
|  |  | ||||||
|  | FROM centos:8 as runtime | ||||||
|  |  | ||||||
|  | RUN yum install -y gdb strace | ||||||
|  |  | ||||||
|  | RUN groupadd app && useradd -g app app | ||||||
|  | COPY --chown=app:app --from=build /usr/local/bin/ws /usr/local/bin/ws | ||||||
|  | RUN chmod +x /usr/local/bin/ws | ||||||
|  | RUN ldd /usr/local/bin/ws | ||||||
|  |  | ||||||
|  | # Copy source code for gcc | ||||||
|  | COPY --chown=app:app --from=build /opt /opt | ||||||
|  |  | ||||||
|  | # Now run in usermode | ||||||
|  | USER app | ||||||
|  | WORKDIR /home/app | ||||||
|  |  | ||||||
|  | ENTRYPOINT ["ws"] | ||||||
|  | EXPOSE 8008 | ||||||
		Reference in New Issue
	
	Block a user