mirror of
https://github.com/FlareSolverr/FlareSolverr.git
synced 2025-06-07 12:05:37 +00:00
Improve Docker image and clean TODOs
This commit is contained in:
parent
cfd158462f
commit
77a87c79fd
1
.github/ISSUE_TEMPLATE.md
vendored
1
.github/ISSUE_TEMPLATE.md
vendored
@ -11,6 +11,7 @@ Check closed issues as well, because your issue may have already been fixed.
|
||||
* **Last working FlareSolverr version**:
|
||||
* **Operating system**:
|
||||
* **Are you using Docker**: [yes/no]
|
||||
* **FlareSolverr User-Agent (see log traces or / endpoint)**:
|
||||
* **Are you using a proxy or VPN?** [yes/no]
|
||||
* **Are you using Captcha Solver:** [yes/no]
|
||||
* **If using captcha solver, which one:**
|
||||
|
10
Dockerfile
10
Dockerfile
@ -1,13 +1,14 @@
|
||||
FROM --platform=${TARGETPLATFORM:-linux/amd64} node:14-alpine3.14
|
||||
FROM --platform=${TARGETPLATFORM:-linux/amd64} node:16-alpine3.14
|
||||
|
||||
# Print build information
|
||||
ARG TARGETPLATFORM
|
||||
ARG BUILDPLATFORM
|
||||
RUN printf "I am running on ${BUILDPLATFORM:-linux/amd64}, building for ${TARGETPLATFORM:-linux/amd64}\n$(uname -a)\n"
|
||||
|
||||
# Install the web browser
|
||||
# Install the web browser (package firefox-esr is available too)
|
||||
RUN apk update && \
|
||||
apk add --no-cache firefox-esr dumb-init
|
||||
apk add --no-cache firefox dumb-init && \
|
||||
rm -Rf /var/cache
|
||||
|
||||
# Copy FlareSolverr code
|
||||
USER node
|
||||
@ -28,3 +29,6 @@ RUN npm install && \
|
||||
EXPOSE 8191
|
||||
ENTRYPOINT ["/usr/bin/dumb-init", "--"]
|
||||
CMD ["npm", "start"]
|
||||
|
||||
# docker build -t flaresolverr:custom .
|
||||
# docker run -p 8191:8191 -e LOG_LEVEL=debug flaresolverr:custom
|
||||
|
@ -26,7 +26,7 @@ const version = 'v' + require('./package.json').version;
|
||||
fsZipName: 'windows-x64',
|
||||
fsLicenseName: 'LICENSE.txt'
|
||||
}
|
||||
// TODO: this is working but changes are required in sessions.ts to find chrome path
|
||||
// todo: this is working but changes are required in sessions.ts to find chrome path
|
||||
// {
|
||||
// platform: 'mac',
|
||||
// version: 756035,
|
||||
|
@ -102,7 +102,7 @@ export default async function resolveChallenge(url: string, page: Page, response
|
||||
|
||||
// const captchaSolver = getCaptchaSolver()
|
||||
// if (captchaSolver) {
|
||||
// // todo: get the params
|
||||
// // to-do: get the params
|
||||
// log.info('Waiting to receive captcha token to bypass challenge...')
|
||||
// const token = await captchaSolver({
|
||||
// url,
|
||||
@ -110,7 +110,7 @@ export default async function resolveChallenge(url: string, page: Page, response
|
||||
// type: captchaType
|
||||
// })
|
||||
// log.debug(`Token received: ${token}`);
|
||||
// // todo: send the token
|
||||
// // to-do: send the token
|
||||
// }
|
||||
// } else {
|
||||
// throw new Error('Captcha detected but no automatic solver is configured.');
|
||||
|
@ -24,7 +24,7 @@ export interface SessionCreateOptions {
|
||||
oneTimeSession: boolean
|
||||
cookies?: SetCookie[],
|
||||
maxTimeout?: number
|
||||
proxy?: any// TODO: use interface not any
|
||||
proxy?: Proxy
|
||||
}
|
||||
|
||||
const sessionCache: SessionsCache = {}
|
||||
@ -120,12 +120,9 @@ export async function create(session: string, options: SessionCreateOptions): Pr
|
||||
|
||||
log.debug('Launching web browser...')
|
||||
|
||||
// TODO: maybe access env variable?
|
||||
// TODO: sometimes browser instances are created and not connected to correctly.
|
||||
// how do we handle/quit those instances inside Docker?
|
||||
// todo: the retries are required?
|
||||
let launchTries = 3
|
||||
let browser: Browser;
|
||||
|
||||
while (0 <= launchTries--) {
|
||||
try {
|
||||
browser = await puppeteer.launch(puppeteerOptions)
|
||||
@ -154,8 +151,6 @@ export function list(): string[] {
|
||||
return Object.keys(sessionCache)
|
||||
}
|
||||
|
||||
// todo: create a sessions.close that doesn't rm the userDataDir
|
||||
|
||||
export async function destroy(id: string): Promise<boolean>{
|
||||
if (id && sessionCache.hasOwnProperty(id)) {
|
||||
const { browser, userDataDir } = sessionCache[id]
|
||||
|
Loading…
x
Reference in New Issue
Block a user