Go-ipfs: Unable to pass ipfs daemon arguments to the docker container

Created on 6 Nov 2017  路  6Comments  路  Source: ipfs/go-ipfs

Version information:

ipfs/go-ipfs:latest, currently 0.4.11

Type:

bug

Severity:

medium

Description:

It seems like https://github.com/ipfs/go-ipfs/pull/3573 and https://github.com/ipfs/go-ipfs/pull/3685 may have broken the ability to pass custom arguments to "ipfs daemon" while trying to make it possible to run other commands. Either that or I'm doing something wrong, but in either case the DEPRECATED error says what you should run instead, which also does not work and would be considered a bug.

Trying to launch a container with # docker run -it --rm ipfs/go-ipfs:latest -- daemon --writable --enable-pubsub-experiment --migrate=true says:

```Changing user to ipfs
ipfs version 0.4.11
initializing IPFS node at /data/ipfs
generating 2048-bit RSA keypair...done
peer identity: QmPVwMfnaCEiRca6giQxbw8weYcVS59HCSgRgchZhXoEo9
to get started, enter:

ipfs cat /ipfs/QmS4ustL54uo8FzR9455qaxZwuMiUhyvMcX9Ba8nUH4uVv/readme

DEPRECATED: arguments have been set but the first argument isn't 'daemon'
DEPRECATED: run 'docker run ipfs/go-ipfs daemon -- daemon --writable --enable-pubsub-experiment --migrate=true' instead
DEPRECATED: see the following PRs for more information:
DEPRECATED: * https://github.com/ipfs/go-ipfs/pull/3573
DEPRECATED: * https://github.com/ipfs/go-ipfs/pull/3685
Error: Unknown Command "daemon"

Did you mean this?

daemon

USAGE
ipfs daemon - Run a network-connected IPFS node.

ipfs daemon [--init] [--routing=] [--mount] [--writable] [--mount-ipfs=] [--mount-ipns=] [--unrestricted-api] [--disable-transport-encryption] [--enable-gc] [--manage-fdlimit=false] [--offline] [--migrate] [--enable-pubsub-experiment] [--enable-mplex-experiment=false]

'ipfs daemon' runs a persistent ipfs daemon that can serve commands
over the network. Most applications that use IPFS will do so by
communicating with a daemon over the HTTP API. While the daemon is
running, calls to 'ipfs' commands will be sent over the network to
the daemon.

Use 'ipfs daemon --help' for more information about this command.

In short, it says run `docker run ipfs/go-ipfs daemon -- daemon --writable --enable-pubsub-experiment --migrate=true`.  Running that produces:

```# docker run ipfs/go-ipfs daemon -- daemon --writable --enable-pubsub-experiment --migrate=true
Changing user to ipfs
ipfs version 0.4.11
initializing IPFS node at /data/ipfs
generating 2048-bit RSA keypair...done
peer identity: QmT3Hy5jdbdPhpqDNjNs6cFEz3a8UfhFwm3eQ6bQjSvLy3
to get started, enter:

    ipfs cat /ipfs/QmS4ustL54uo8FzR9455qaxZwuMiUhyvMcX9Ba8nUH4uVv/readme

Error: Unknown Command "daemon"

Did you mean this?

    daemon

USAGE
  ipfs daemon - Run a network-connected IPFS node.

  ipfs daemon [--init] [--routing=<routing>] [--mount] [--writable] [--mount-ipfs=<mount-ipfs>] [--mount-ipns=<mount-ipns>] [--unrestricted-api] [--disable-transport-encryption] [--enable-gc] [--manage-fdlimit=false] [--offline] [--migrate] [--enable-pubsub-experiment] [--enable-mplex-experiment=false]

  'ipfs daemon' runs a persistent ipfs daemon that can serve commands
  over the network. Most applications that use IPFS will do so by
  communicating with a daemon over the HTTP API. While the daemon is
  running, calls to 'ipfs' commands will be sent over the network to
  the daemon.

Use 'ipfs daemon --help' for more information about this command.

All 6 comments

Try docker run -it ipfs/go-ipfs --writable --enable-pubsub-experiment --migrate=true

That works, thank you. Should I close this or leave it open so that bin/container_daemon can be updated to not suggest the wrong thing?

cc @kpcyrd

@Stebalien I also want to know how we can do like ipfs bootstrap rm --all before we daemon in docker, seems this not supported by the current Dockerfile

docker run -it ipfs/go-ipfs --writable --enable-pubsub-experiment --migrate=true

Running the above results in

Error: unknown option "writable"

Removing writable results in

Error: unknown option "enable-pubsub-experiment"

@haydenyoung we've changed the docker init script. You'll have to run docker run -it ipfs/go-ipfs daemon --writable

Closing this issue as out of date and resolved.

Was this page helpful?
0 / 5 - 0 ratings

Related issues

djdv picture djdv  路  3Comments

daviddias picture daviddias  路  3Comments

magik6k picture magik6k  路  3Comments

lidel picture lidel  路  3Comments

JesseWeinstein picture JesseWeinstein  路  4Comments