-
-
Notifications
You must be signed in to change notification settings - Fork 159
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
reduction of docker image size better playwright settings
- Loading branch information
Showing
13 changed files
with
622 additions
and
26 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,25 +1,63 @@ | ||
FROM golang:1.23.1-bullseye AS withnode | ||
|
||
RUN apt-get update && \ | ||
apt-get install -y ca-certificates net-tools && \ | ||
curl -fsSL https://deb.nodesource.com/setup_20.x | bash - \ | ||
&& apt-get install -y nodejs | ||
|
||
RUN npm init -y && npm install && npx playwright@latest install-deps | ||
|
||
ENV GO111MODULE=on | ||
#ENV CGO_ENABLED=1 | ||
ENV GOOS=linux | ||
ENV GOARCH=amd64 | ||
|
||
# Build stage for Playwright dependencies | ||
FROM golang:1.23.2-bullseye AS playwright-deps | ||
ENV PLAYWRIGHT_BROWSERS_PATH=/opt/browsers | ||
ENV PLAYWRIGHT_DRIVER_PATH=/opt/ | ||
RUN apt-get update && apt-get install -y --no-install-recommends \ | ||
ca-certificates \ | ||
curl \ | ||
&& curl -fsSL https://deb.nodesource.com/setup_20.x | bash - \ | ||
&& apt-get install -y --no-install-recommends nodejs \ | ||
&& apt-get clean \ | ||
&& rm -rf /var/lib/apt/lists/* \ | ||
&& go install github.com/playwright-community/playwright-go/cmd/playwright@latest \ | ||
&& mkdir -p /opt/browsers \ | ||
&& playwright install chromium --with-deps \ | ||
&& rm -rf /root/.cache/* /root/.npm/* | ||
|
||
# Build stage | ||
FROM golang:1.23.2-bullseye AS builder | ||
WORKDIR /app | ||
|
||
COPY go.mod go.sum ./ | ||
RUN go mod download | ||
COPY . . | ||
|
||
RUN go build -o /usr/bin/google-maps-scraper | ||
|
||
RUN PLAYWRIGHT_INSTALL_ONLY=1 google-maps-scraper | ||
RUN CGO_ENABLED=0 go build -ldflags="-w -s" -o /usr/bin/google-maps-scraper | ||
|
||
# Final stage | ||
FROM debian:bullseye-slim | ||
ENV PLAYWRIGHT_BROWSERS_PATH=/opt/browsers | ||
ENV PLAYWRIGHT_DRIVER_PATH=/opt | ||
|
||
# Install only the necessary dependencies in a single layer | ||
RUN apt-get update && apt-get install -y --no-install-recommends \ | ||
ca-certificates \ | ||
libnss3 \ | ||
libnspr4 \ | ||
libatk1.0-0 \ | ||
libatk-bridge2.0-0 \ | ||
libcups2 \ | ||
libdrm2 \ | ||
libdbus-1-3 \ | ||
libxkbcommon0 \ | ||
libatspi2.0-0 \ | ||
libx11-6 \ | ||
libxcomposite1 \ | ||
libxdamage1 \ | ||
libxext6 \ | ||
libxfixes3 \ | ||
libxrandr2 \ | ||
libgbm1 \ | ||
libpango-1.0-0 \ | ||
libcairo2 \ | ||
libasound2 \ | ||
&& apt-get clean \ | ||
&& rm -rf /var/lib/apt/lists/* | ||
|
||
COPY --from=playwright-deps /opt/browsers /opt/browsers | ||
COPY --from=playwright-deps /opt/ms-playwright-go /opt/ms-playwright-go | ||
|
||
RUN chmod -R 755 /opt/browsers \ | ||
&& chmod -R 755 /opt/ms-playwright-go | ||
|
||
COPY --from=builder /usr/bin/google-maps-scraper /usr/bin/ | ||
|
||
ENTRYPOINT ["google-maps-scraper"] |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,5 +1,5 @@ | ||
APP_NAME := google_maps_scraper | ||
VERSION := 1.5.3 | ||
VERSION := 1.6.0 | ||
|
||
default: help | ||
|
||
|
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Oops, something went wrong.