Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revision Previous revision
Next revision
Previous revision
vms:webdev:fabric [2017/03/17 01:26]
admin [Docker Engine]
vms:webdev:fabric [2017/03/17 19:06] (current)
admin [Fabric Components]
Line 68: Line 68:
 > curl -fsSL https://​download.docker.com/​linux/​debian/​gpg | sudo apt-key add - > curl -fsSL https://​download.docker.com/​linux/​debian/​gpg | sudo apt-key add -
 OK OK
-> sudo add-apt-repository "deb [arch=amd64] ​https://download.docker.com/linux/​debian ​$(lsb_release ​-cs) stable"​+ 
 +> sudo nano /etc/apt/​sources.list.d/​docker.list 
 +ADD 
 +deb https://apt.dockerproject.org/repo debian-jessie main 
 > sudo apt-get update > sudo apt-get update
-> apt-cache madison docker-ce +> apt-cache madison docker-engine 
- ​docker-ce 17.03.0~ce-0~debian-jessie | https://download.docker.com/linux/debian/ jessie/stable ​amd64 Packages+... 
 + ​docker-engine ​1.13.0-0~debian-jessie | https://apt.dockerproject.org/​repo/​ debian-jessie/​main amd64 Packages 
 +docker-engine | 1.12.6-0~debian-jessie | https://​apt.dockerproject.org/​repo/ debian-jessie/main amd64 Packages 
 +docker-engine | 1.12.5-0~debian-jessie ​| https://​apt.dockerproject.org/​repo/​ debian-jessie/​main ​amd64 Packages 
 +... 
 +> sudo apt-get install docker-engine=1.12.6-0~debian-jessie
 </​code>​ </​code>​
  
-The recommended Docker version being 1.12.x ​we'​re ​not going to use the repository method but rather go for the DEB archive:+=== Complementary actions === 
 +Now, as we do not want to //​automatically upgrade// ​the ''​docker-engine''​ package when using ''​apt-get upgrade'',​ we'll **put the package on hold**: 
 +<​code>​ 
 +> sudo apt-mark hold docker-engine 
 +</​code>​
  
 +To remove the hold:
 <​code>​ <​code>​
-> sudo nano /etc/apt/​source.list +> sudo apt-mark unhold ​docker-engine
-COMMENT OUT: +
-# deb [arch=amd64] https://​download.docker.com/​linux/​debian jessie stable +
-> sudo apt-get update+
 </​code>​ </​code>​
  
-=== Specific version === +Start and Autostart ​Docker: 
-A list of Docker ​versions is available [[https://docs.docker.com/docsarchive/#v1703-current|on the Docker website]].+<​code>​ 
 +> sudo systemctl start docker 
 +> sudo systemctl enable docker 
 +Synchronizing state for docker.service with sysvinit using update-rc.d... 
 +Executing ​/usr/sbin/​update-rc.docker ​defaults 
 +Executing ​/usr/sbin/update-rc.d docker enable 
 +</​code>​
  
 +Docker status:
 +<​code>​
 +> systemctl status docker
 +● docker.service - Docker Application Container Engine
 +   ​Loaded:​ loaded (/​lib/​systemd/​system/​docker.service;​ enabled)
 +   ​Active:​ active (running) since Fri 2017-03-17 02:03:28 CET; 11min ago
 +     Docs: https://​docs.docker.com
 + Main PID: 10340 (dockerd)
 +   ​CGroup:​ /​system.slice/​docker.service
 +           ​├─10340 /​usr/​bin/​dockerd -H fd://
 +           ​└─10344 docker-containerd -l unix:///​var/​run/​docker/​libcontainerd/​docker-containerd.sock --shim docker-containerd-shim --metrics-interval=0 -...
 +</​code>​
  
 +=== Check Docker is functioning ===
 +<​code>​
 +> sudo docker run hello-world
 +...
 +Hello from Docker!
 +This message shows that your installation appears to be working correctly.
 +...
 +</​code>​
 ==== Docker Compose ==== ==== Docker Compose ====
 +From [[https://​www.linuxbabe.com/​linux-server/​install-docker-on-debian-8-jessie-server|linuxable.com]].\\
 +For a list of Docker-compose versions, see [[https://​github.com/​docker/​compose/​releases|this GitHub page]].
 +
 +<​code>​
 +> su
 +> curl -L https://​github.com/​docker/​compose/​releases/​download/​1.8.1/​docker-compose-`uname -s`-`uname -m` > /​usr/​local/​bin/​docker-compose
 +> chmod +x /​usr/​local/​bin/​docker-compose
 +> docker-compose --version
 +docker-compose version 1.8.1, build 878cff1
 +> exit
 +</​code>​
 +
 +==== GIT ====
 +
 +<​code>​
 +> sudo apt-get install git-core
 +</​code>​
 +
 +===== Fabric Components =====
 +
 +=== Command line tools ===
 +<​code>​
 +> npm install -g composer-cli
 +</​code>​
 +
 +There was a problem with this install command: hashtable blocked the process.\\
 +A suggested solution on the Fabric Chat:
 +> So ... the root cause of my installation issues with `node-gyp` was the self-signed certificate in the chain
 +`node-gyp` doesn'​t honour the `strict-ssl=false` setting in `.npmrc`
 +> The workaround to get composer-cli to install was to run the following:
 +<​code>​
 +export NODE_TLS_REJECT_UNAUTHORIZED=0
 +</​code>​
 +before
 +<​code>​
 +npm install -g composer-cli
 +</​code>​
 +
 +=== Clone and install the Sample Applications ===
 +<​code>​
 +> git clone https://​github.com/​fabric-composer/​sample-applications.git
 +> cd sample-applications/​packages/​getting-started
 +> npm install
 +</​code>​
 +
 +Had to run the ''​npm-install''​ command as root, otherwise couldn'​t connect to docker deamon:\\
 +> docker pull hyperledger/​fabric-baseimage:​x86_64-0.1.0
 +> Warning: failed to get default registry endpoint from daemon (Cannot connect to the Docker daemon. Is the docker daemon running on this host?). Using system default: https://​index.docker.io/​v1/​
 +> Cannot connect to the Docker daemon. Is the docker daemon running on this host?
 +
 +This required to add the following in ''/​root/​.bashrc'':​
 +<​code>​
 +export NVM_DIR="/​home/​sysadmin/​.nvm"​
 +[ -s "​$NVM_DIR/​nvm.sh"​ ] && . "​$NVM_DIR/​nvm.sh" ​ # This loads nvm
 +</​code>​
 +
 +Also had to run a few commands //​manually//​ before I got it running (root in ''/​home/​sysadmin/​sample-applications/​packages/​getting-started''​):​
 +<​code>​
 +> docker pull hyperledger/​fabric-baseimage:​x86_64-0.1.0
 +> scripts/​download-hyperledger.sh
 +> scripts/​start-hyperledger.sh
 +> npm run deployNetwork /​home/​sysadmin/​sample-applications/​packages/​getting-started
 +</​code>​