Difference between revisions of "Docker Image for developing"

From ESS-WIKI
Jump to: navigation, search
Line 29: Line 29:
  
 
<span style="font-size:larger;">'''Stop /&nbsp;Start Docker Container'''</span>
 
<span style="font-size:larger;">'''Stop /&nbsp;Start Docker Container'''</span>
 
WSN Simulator
 
 
<pre>$sudo docker stop advigw-wsn-simulator
 
<pre>$sudo docker stop advigw-wsn-simulator
  
 
$sudo docker start advigw-wsn-simulator</pre>
 
$sudo docker start advigw-wsn-simulator</pre>
 +
 +
<span style="font-size:large;">'''Docker logs : redictor stdout&nbsp;'''</span>
 +
<pre>// dcoker logs container-name > log.txt
 +
$docker logs advigw-wsn-simulator > log.txt
 +
 +
// docker logs --follow container-name
 +
$docker logs --follow advigw-wsn-simulator</pre>
 +
 +
'''<span style="font-size:large;">Check Network of Container</span>'''
 +
<pre>$docker inspect <CONTAINER ID/NAME> | grep -w "IPAddress" | awk '{ print $2 }' | head -n 1 | cut -d "," -f1</pre>
 +
 +
Show all create container service
  
 
= Network Configuration in Docker Container =
 
= Network Configuration in Docker Container =

Revision as of 09:27, 12 September 2018

Common Docker CLI

Docker Run - runs processes in isolated container option

  • -d : background service
  • -it:: For interactive processes ( like a shell).
  • --name: Container identification
  • -p: export port  e.g <host port>:<internal port>    80:3000
  • exec: run a command in a running container
  • -v : volume ( shared filesystems ) e.g. -v [host-src]:[container-dest]:[option]  -v /run/udev:/run/udev:ro, -v $PWD:/home/adv:rw
  • --privileged : Docker will enable access to all devices on the host as well as set some configuration in AppArmor or SELinux to allow the container nearly all the same access to the host as processes running outside containers on the host

Start a docker container and export server port

$sudo docker run -d -it --name advigw-mqtt-bus -p 1883:1883 advigw4x86/mqtt-bus

$sudo docker run -d -it --name advigw-api-gw -p 3000:3000 advigw4x86/api-gw


Start a docker container and enter into bash

// need add -it
// Run and enter to bash
$sudo docker run -d -it --name advigw-wisesnail-lib-dev -v $PWD:/home/adv/workspace:rw advigw4x86/wisesnail-lib /bin/bash 

// Enter a running container bash
$sudo docker exec -it advigw-wisesnail-lib-dev bash


Stop / Start Docker Container

$sudo docker stop advigw-wsn-simulator

$sudo docker start advigw-wsn-simulator

Docker logs : redictor stdout 

// dcoker logs container-name > log.txt
$docker logs advigw-wsn-simulator > log.txt

// docker logs --follow container-name
$docker logs --follow advigw-wsn-simulator

Check Network of Container

$docker inspect <CONTAINER ID/NAME> | grep -w "IPAddress" | awk '{ print $2 }' | head -n 1 | cut -d "," -f1

Show all create container service

Network Configuration in Docker Container

 sudo docker network create -d bridge --subnet 172.25.0.0/16 advigw_network
 
 sudo docker network connect advigw_network advigw-mqtt-bus
 
 sudo docker network connect advigw_network advigw-api-gw
 
 sudo docker network connect advigw_network advigw-wisesnail-lib-dev

 sudo docker network connect advigw_network advigw-wsn-simulator


How to create a Auto Build project on Docker hub with GitHub

Docker for Windows Hyper-V

https://docs.microsoft.com/en-us/virtualization/windowscontainers/manage-containers/container-networking


https://docs.microsoft.com/zh-tw/virtualization/windowscontainers/manage-containers/container-networking