Fossil SCM

Clarified the fact that the "docker cp" command is changing the name of the repository DB file.

wyoung 2022-08-14 16:18 trunk
Commit f0b15a37fc7aa50abe03ab659fc8043c180440d2e0b3fba767a2d4d46c8b6649
1 file changed +9 -2
+9 -2
--- www/build.wiki
+++ www/build.wiki
@@ -295,11 +295,11 @@
295295
<i>image</i>, not in the image itself.
296296
297297
The simplest method is to stop the container if it was running,
298298
then say:
299299
300
-<pre><code> $ docker cp /path/to/repo.fossil fossil:/jail/museum/repo.fossil
300
+<pre><code> $ docker cp /path/to/my-project.fossil fossil:/jail/museum/repo.fossil
301301
$ docker start fossil
302302
$ docker exec fossil chown 0 /jail/museum/repo.fossil</code></pre>
303303
304304
That copies the local Fossil repo into the container where the server
305305
expects to find it, so that the "start" command causes it to serve from
@@ -308,11 +308,18 @@
308308
309309
(The same is true of the default mode of operation: the <tt>fossil
310310
server --create</tt> flag initializes a fresh Fossil repo atop the base
311311
image.)
312312
313
-If you skip the "chown" command and put "http://localhost:9999/" into
313
+Notice that the name of the repository database likely needs to change
314
+in the copy. The container configuration expects it to be called
315
+<tt>repo.fossil<//tt>, which it almost certainly was not out on the host
316
+system. This is because there is only one repository inside this
317
+container, so we don't have to name it after the project it contains, as
318
+is traditional.
319
+
320
+If you skip the following "chown" command and put "http://localhost:9999/" into
314321
your browser, expecting to see the copied-in repo's home page, you will
315322
get an opaque "Not Found" error. This is because the user and
316323
group ID of the file will be that of your local user on the container's
317324
host machine, which won't map to anything in the container's
318325
<tt>/etc/passwd</tt> and <tt>/etc/group</tt> files, effectively
319326
--- www/build.wiki
+++ www/build.wiki
@@ -295,11 +295,11 @@
295 <i>image</i>, not in the image itself.
296
297 The simplest method is to stop the container if it was running,
298 then say:
299
300 <pre><code> $ docker cp /path/to/repo.fossil fossil:/jail/museum/repo.fossil
301 $ docker start fossil
302 $ docker exec fossil chown 0 /jail/museum/repo.fossil</code></pre>
303
304 That copies the local Fossil repo into the container where the server
305 expects to find it, so that the "start" command causes it to serve from
@@ -308,11 +308,18 @@
308
309 (The same is true of the default mode of operation: the <tt>fossil
310 server --create</tt> flag initializes a fresh Fossil repo atop the base
311 image.)
312
313 If you skip the "chown" command and put "http://localhost:9999/" into
 
 
 
 
 
 
 
314 your browser, expecting to see the copied-in repo's home page, you will
315 get an opaque "Not Found" error. This is because the user and
316 group ID of the file will be that of your local user on the container's
317 host machine, which won't map to anything in the container's
318 <tt>/etc/passwd</tt> and <tt>/etc/group</tt> files, effectively
319
--- www/build.wiki
+++ www/build.wiki
@@ -295,11 +295,11 @@
295 <i>image</i>, not in the image itself.
296
297 The simplest method is to stop the container if it was running,
298 then say:
299
300 <pre><code> $ docker cp /path/to/my-project.fossil fossil:/jail/museum/repo.fossil
301 $ docker start fossil
302 $ docker exec fossil chown 0 /jail/museum/repo.fossil</code></pre>
303
304 That copies the local Fossil repo into the container where the server
305 expects to find it, so that the "start" command causes it to serve from
@@ -308,11 +308,18 @@
308
309 (The same is true of the default mode of operation: the <tt>fossil
310 server --create</tt> flag initializes a fresh Fossil repo atop the base
311 image.)
312
313 Notice that the name of the repository database likely needs to change
314 in the copy. The container configuration expects it to be called
315 <tt>repo.fossil<//tt>, which it almost certainly was not out on the host
316 system. This is because there is only one repository inside this
317 container, so we don't have to name it after the project it contains, as
318 is traditional.
319
320 If you skip the following "chown" command and put "http://localhost:9999/" into
321 your browser, expecting to see the copied-in repo's home page, you will
322 get an opaque "Not Found" error. This is because the user and
323 group ID of the file will be that of your local user on the container's
324 host machine, which won't map to anything in the container's
325 <tt>/etc/passwd</tt> and <tt>/etc/group</tt> files, effectively
326

Keyboard Shortcuts

Open search /
Next entry (timeline) j
Previous entry (timeline) k
Open focused entry Enter
Show this help ?
Toggle theme Top nav button