Page MenuHomePhabricator

`CANCELED [mediawiki_cxserver internal] load metadata for docker.io/library/node:10-buster` when following instructions from MediaWiki-Docker/Extension/ContentTranslation
Open, LowPublic

Description

I'm following instructions from MediaWiki-Docker/Extension/ContentTranslation. At docker-compose up -d step I'm getting this error.

~/Documents/mediawiki$ docker-compose up -d
[+] Building 0.2s (4/5)                                                                                                                      
 => [mediawiki_cxserver internal] load build definition from Dockerfile                                                                 0.0s
 => => transferring dockerfile: 31B                                                                                                     0.0s
 => [mediawiki_eventlogging internal] load build definition from Dockerfile                                                             0.0s
 => => transferring dockerfile: 2B                                                                                                      0.0s
 => [mediawiki_cxserver internal] load .dockerignore                                                                                    0.0s
 => => transferring context: 2B                                                                                                         0.0s
 => CANCELED [mediawiki_cxserver internal] load metadata for docker.io/library/node:10-buster                                           0.0s
failed to solve: rpc error: code = Unknown desc = failed to solve with frontend dockerfile.v0: failed to read dockerfile: open /var/lib/docker/tmp/buildkit-mount133945045/Dockerfile: no such file or directory

Full terminal output.

1~/Documents$ git clone --depth=1 https://gerrit.wikimedia.org/r/mediawiki/core.git mediawiki
2Cloning into 'mediawiki'...
3remote: Counting objects: 8900, done
4remote: Finding sources: 100% (8900/8900)
5remote: Getting sizes: 100% (7331/7331)
6remote: Compressing objects: 99% (82436/82437)
7remote: Total 8900 (delta 2315), reused 4780 (delta 1568)
8Receiving objects: 100% (8900/8900), 31.66 MiB | 2.18 MiB/s, done.
9Resolving deltas: 100% (2315/2315), done.
10Updating files: 100% (8264/8264), done.
11
12
13
14~/Documents$ git clone "https://gerrit.wikimedia.org/r/mediawiki/services/cxserver" cxserver
15Cloning into 'cxserver'...
16remote: Total 5976 (delta 0), reused 5976 (delta 0)
17Receiving objects: 100% (5976/5976), 81.69 MiB | 1014.00 KiB/s, done.
18Resolving deltas: 100% (4396/4396), done.
19
20
21
22~/Documents$ cd mediawiki
23
24
25
26~/Documents/mediawiki$ git clone "https://gerrit.wikimedia.org/r/mediawiki/skins/Vector" skins/Vector
27git clone "https://gerrit.wikimedia.org/r/mediawiki/extensions/Cite" extensions/Cite
28git clone "https://gerrit.wikimedia.org/r/mediawiki/extensions/ContentTranslation" extensions/ContentTranslation
29git clone "https://gerrit.wikimedia.org/r/mediawiki/extensions/UniversalLanguageSelector" extensions/UniversalLanguageSelector
30git clone --recursive "https://gerrit.wikimedia.org/r/mediawiki/extensions/VisualEditor" extensions/VisualEditor
31git clone "https://gerrit.wikimedia.org/r/mediawiki/extensions/BetaFeatures" extensions/BetaFeatures
32git clone "https://gerrit.wikimedia.org/r/mediawiki/extensions/GlobalPreferences" extensions/GlobalPreferences
33git clone "https://gerrit.wikimedia.org/r/mediawiki/extensions/MobileFrontend" extensions/MobileFrontend
34git clone "https://gerrit.wikimedia.org/r/mediawiki/extensions/EventLogging" extensions/EventLogging
35Cloning into 'skins/Vector'...
36remote: Counting objects: 120, done
37remote: Finding sources: 100% (115/115)
38remote: Getting sizes: 100% (78/78)
39remote: Compressing objects: 100% (1279008/1279008)
40remote: Total 12965 (delta 33), reused 12905 (delta 20)
41Receiving objects: 100% (12965/12965), 3.68 MiB | 1.49 MiB/s, done.
42Resolving deltas: 100% (9739/9739), done.
43Cloning into 'extensions/Cite'...
44remote: Counting objects: 34, done
45remote: Finding sources: 100% (29/29)
46remote: Getting sizes: 100% (17/17)
47remote: Compressing objects: 100% (305218/305218)
48remote: Total 19311 (delta 8), reused 19298 (delta 7)
49Receiving objects: 100% (19311/19311), 3.62 MiB | 806.00 KiB/s, done.
50Resolving deltas: 100% (14936/14936), done.
51Cloning into 'extensions/ContentTranslation'...
52remote: Counting objects: 344, done
53remote: Finding sources: 100% (344/344)
54remote: Getting sizes: 100% (283/283)
55remote: Compressing objects: 100% (2933086/2933086)
56remote: Total 50109 (delta 52), reused 49892 (delta 41)
57Receiving objects: 100% (50109/50109), 13.62 MiB | 1.94 MiB/s, done.
58Resolving deltas: 100% (40538/40538), done.
59Cloning into 'extensions/UniversalLanguageSelector'...
60remote: Counting objects: 107, done
61remote: Finding sources: 100% (50/50)
62remote: Getting sizes: 100% (30/30)
63remote: Compressing objects: 100% (692290/692290)
64remote: Total 25314 (delta 17), reused 25289 (delta 9)
65Receiving objects: 100% (25314/25314), 74.78 MiB | 2.37 MiB/s, done.
66Resolving deltas: 100% (18895/18895), done.
67Cloning into 'extensions/VisualEditor'...
68remote: Counting objects: 184, done
69remote: Finding sources: 100% (111/111)
70remote: Getting sizes: 100% (71/71)
71remote: Compressing objects: 100% (1198791/1198791)
72remote: Total 143636 (delta 35), reused 143580 (delta 23)
73Receiving objects: 100% (143636/143636), 26.65 MiB | 2.19 MiB/s, done.
74Resolving deltas: 100% (114840/114840), done.
75Submodule 'lib/ve' (https://gerrit.wikimedia.org/r/VisualEditor/VisualEditor.git) registered for path 'lib/ve'
76Cloning into '/Users/z/Documents/mediawiki/extensions/VisualEditor/lib/ve'...
77remote: Counting objects: 51, done
78remote: Finding sources: 100% (15/15)
79remote: Getting sizes: 100% (9/9)
80remote: Compressing objects: 100% (279932/279932)
81remote: Total 141584 (delta 4), reused 141576 (delta 3)
82Receiving objects: 100% (141584/141584), 29.57 MiB | 1.59 MiB/s, done.
83Resolving deltas: 100% (121535/121535), done.
84Submodule path 'lib/ve': checked out '2226310506cef39b369f49162e1cf2e5794ca484'
85Cloning into 'extensions/BetaFeatures'...
86remote: Counting objects: 15, done
87remote: Finding sources: 100% (15/15)
88remote: Getting sizes: 100% (11/11)
89remote: Compressing objects: 100% (198542/198542)
90remote: Total 6610 (delta 2), reused 6600 (delta 1)
91Receiving objects: 100% (6610/6610), 1.20 MiB | 1.17 MiB/s, done.
92Resolving deltas: 100% (4859/4859), done.
93Cloning into 'extensions/GlobalPreferences'...
94remote: Counting objects: 11, done
95remote: Finding sources: 100% (11/11)
96remote: Getting sizes: 100% (9/9)
97remote: Compressing objects: 100% (180117/180117)
98remote: Total 3378 (delta 1), reused 3369 (delta 0)
99Receiving objects: 100% (3378/3378), 816.98 KiB | 1.09 MiB/s, done.
100Resolving deltas: 100% (2460/2460), done.
101Cloning into 'extensions/MobileFrontend'...
102remote: Counting objects: 281, done
103remote: Finding sources: 100% (61/61)
104remote: Getting sizes: 100% (41/41)
105remote: Compressing objects: 100% (42091/42091)
106remote: Total 120436 (delta 14), reused 120429 (delta 14)
107Receiving objects: 100% (120436/120436), 31.29 MiB | 2.44 MiB/s, done.
108Resolving deltas: 100% (97353/97353), done.
109Cloning into 'extensions/EventLogging'...
110remote: Counting objects: 9, done
111remote: Finding sources: 100% (9/9)
112remote: Getting sizes: 100% (7/7)
113remote: Compressing objects: 100% (152283/152283)
114remote: Total 6564 (delta 1), reused 6558 (delta 0)
115Receiving objects: 100% (6564/6564), 1.42 MiB | 1.13 MiB/s, done.
116Resolving deltas: 100% (4815/4815), done.
117
118
119
120~/Documents/mediawiki$ echo "MW_DOCKER_UID=$(id -u)" >> .env
121echo "MW_DOCKER_GID=$(id -g)" >> .env
122
123
124
125~/Documents/mediawiki$ docker-compose up -d
126[+] Building 0.3s (4/5)
127 => [mediawiki_cxserver internal] load build definition from Dockerfile 0.0s
128 => => transferring dockerfile: 105B 0.0s
129 => [mediawiki_eventlogging internal] load build definition from Dockerfile 0.0s
130 => => transferring dockerfile: 2B 0.0s
131 => [mediawiki_cxserver internal] load .dockerignore 0.0s
132 => => transferring context: 2B 0.0s
133 => CANCELED [mediawiki_cxserver internal] load metadata for docker.io/library/node:10-buster 0.0s
134failed to solve: rpc error: code = Unknown desc = failed to solve with frontend dockerfile.v0: failed to read dockerfile: open /var/lib/docker/tmp/buildkit-mount687336434/Dockerfile: no such file or directory

Environment.

1~$ sw_vers
2ProductName: Mac OS X
3ProductVersion: 10.15.7
4BuildVersion: 19H1323
5
6
7
8~$ docker --version
9Docker version 20.10.8, build 3967b7d
10
11
12
13~$ docker-compose --version
14Docker Compose version v2.0.0-rc.2
15
16
17
18~/Documents/cxserver$ cat config.yaml
19# Number of worker processes to spawn.
20# Set to 0 to run everything in a single process without clustering.
21# Use ncpu to run as many workers as there are CPU units
22num_workers: 0
23
24# Log error messages and gracefully restart a worker if v8 reports that it
25# uses more heap (note: not RSS) than this many megabytes.
26worker_heap_limit_mb: 250
27
28# Logger info
29logging:
30 level: trace
31 streams:
32 - type: stdout # log to stdout
33 named_levels: true # emit log level name instead of index. e.g. INFO vs 30
34# # Use gelf-stream -> logstash
35# - type: gelf
36# host: logstash1003.eqiad.wmnet
37# port: 12201
38
39# Statsd metrics reporter
40metrics:
41 #type: log
42 #host: localhost
43 #port: 8125
44
45ratelimiter:
46 type: memory
47
48services:
49 - name: cxserver
50 # a relative path or the name of an npm package, if different from name
51 module: ./app.js
52 # optionally, a version constraint of the npm package
53 # version: ^0.4.0
54 # per-service config
55 conf:
56 port: 8080
57 # private_key: path to private key file for enabling https
58 # certificate: path to certificate file for enabling https
59 # interface: localhost # uncomment to only listen on localhost
60 # More per-service config settings
61 # The location of the spec, defaults to spec.yaml if not specified
62 # spec: ./spec.yaml
63 # allow cross-domain requests to the API (default *)
64 cors: '*'
65 # to disable use:
66 # cors: false
67 # to restrict to a particular domain, use:
68 # cors: restricted.domain.org
69 # URL of the outbound proxy to use (complete with protocol)
70 # proxy: http://my.proxy.org:8080
71 # the list of domains for which not to use the proxy defined above
72 # no_proxy_list:
73 # - domain1.com
74 # - domain2.org
75 user_agent: cxserver
76 # Mediawiki host name. Example {lang}.wikisource.org which get expanded internally to
77 # es.wikisource.org in a spanish language context.
78 # Do not prefix with http or https://
79 # mw_host: '{lang}.wikipedia.org'
80 mwapi_req:
81 body: "{{request.body}}"
82 query: "{{ default(request.query, {}) }}"
83 headers:
84 host: "{{request.params.domain}}"
85 user-agent: "{{user-agent}}"
86 method: post
87 uri: "https://{{domain}}/w/api.php"
88 restbase_req:
89 method: '{{request.method}}'
90 uri: https://{{domain}}/api/rest_v1/{+path}
91 query: '{{ default(request.query, {}) }}'
92 headers: '{{request.headers}}'
93 body: '{{request.body}}'
94 jwt:
95 secret: ''
96 algorithms:
97 - HS256
98 ratelimiter_key: x-client-ip # The request header field that uniquely identify a request source
99 ratelimiter_rate: 10
100 languages: config/languages.yaml
101 templatemapping:
102 database: config/templatemapping.db
103 sectionmapping:
104 database: config/cx-section-titles-aligned.db
105 mt:
106 Apertium:
107 api: https://apertium.wmflabs.org
108 # For packaging reasons use separate configuration
109 languages: config/Apertium.yaml
110 Elia:
111 api: https://mt-api.elhuyar.eus/translate_string
112 languages: config/Elia.yaml
113 key: null
114 apiId: null
115 Google:
116 api: https://www.googleapis.com/language/translate/v2
117 key: null
118 languages: config/Google.yaml
119 Yandex:
120 api: https://translate.yandex.net
121 key: null
122 languages: config/Yandex.yaml
123 Youdao:
124 api: https://openapi.youdao.com/api
125 appKey: null
126 appSecret: null
127 languages: config/Youdao.yaml
128 LingoCloud:
129 api: https://api.interpreter.caiyunai.com/v1
130 account: wikimedia
131 key: null
132 languages: config/LingoCloud.yaml
133 OpusMT:
134 api: https://opusmt.wmflabs.org/api/translate
135 languages: config/OpusMT.yaml
136 TestClient:
137 languages: config/TestClient.yaml
138 dictionary:
139 Dictd:
140 languages: config/Dictd.yaml
141 JsonDict:
142 languages: config/JsonDict.yaml
143
144
145
146~/Documents/mediawiki$ cat .env
147MW_DOCKER_PORT=8080
148MW_SCRIPT_PATH=/w
149MW_SERVER=http://localhost:8080
150MEDIAWIKI_USER=Admin
151MEDIAWIKI_PASSWORD=dockerpass
152XDEBUG_CONFIG=''
153CXSERVER_PORT=8090
154MW_DOCKER_UID=501
155MW_DOCKER_GID=20
156
157
158
159~/Documents/mediawiki$ cat docker-compose.override.yml
160version: '3.7'
161services:
162 mediawiki:
163 # On Linux, these lines ensure file ownership is set to your host user/group
164 user: "${MW_DOCKER_UID}:${MW_DOCKER_GID}"
165 mediawiki-web:
166 user: "${MW_DOCKER_UID}:${MW_DOCKER_GID}"
167 mariadb-main:
168 image: 'bitnami/mariadb:latest'
169 volumes:
170 - mariadbdata:/bitnami/mariadb
171 environment:
172 - MARIADB_REPLICATION_MODE=master
173 - MARIADB_REPLICATION_USER=repl_user
174 - MARIADB_REPLICATION_PASSWORD=repl_password
175 - MARIADB_ROOT_PASSWORD=main_root_password
176 - MARIADB_USER=my_user
177 - MARIADB_PASSWORD=my_password
178 - MARIADB_DATABASE=my_database
179 mariadb-replica:
180 image: 'bitnami/mariadb:latest'
181 depends_on:
182 - mariadb-main
183 environment:
184 - MARIADB_REPLICATION_MODE=slave
185 - MARIADB_REPLICATION_USER=repl_user
186 - MARIADB_REPLICATION_PASSWORD=repl_password
187 - MARIADB_MASTER_HOST=mariadb-main
188 - MARIADB_MASTER_PORT_NUMBER=3306
189 - MARIADB_MASTER_ROOT_PASSWORD=main_root_password
190
191 cxserver:
192 build:
193 context: ../cxserver
194 volumes:
195 # map local to remote folder, exclude node_modules
196 - ../cxserver:/opt/cxserver
197 - /opt/cxserver/node_modules
198 ports:
199 - "${CXSERVER_PORT:-8090}:8080"
200 command: npm start
201
202 eventlogging:
203 build:
204 context: ./extensions/EventLogging
205 volumes:
206 # map local to remote folder, exclude node_modules
207 - ./extensions/EventLogging:/opt/eventlogging
208 - /opt/eventlogging/node_modules
209 ports:
210 - "${EVENTLOGGING_PORT:-8192}:8192"
211 command: npm run eventgate-devserver
212
213volumes:
214 mariadbdata:
215 driver: local

Event Timeline

pinging @KartikMistry and @santhosh .

I tried the readme a few months back and everything worked

@KartikMistry was that a question for me? If so, are you saying the documentation should be updated? Can you make the update? I'm not familiar with ContentTranslation or cxserver.

Nikerabbit moved this task from Bugs to Maintenance on the ContentTranslation board.