Docker: ทดลองใช้งาน busybox

1. ดึง image ชื่อ busybox มาติดตั้ง

PS C:\Users\phaisarn.sut\docker> docker pull busybox
Using default tag: latest
latest: Pulling from library/busybox
8c5a7da1afbc: Pull complete
Digest: sha256:cb63aa0641a885f54de20f61d152187419e8f6b159ed11a251a09d115fdff9bd
Status: Downloaded newer image for busybox:latest

หรือกำหนด tag ด้วย เลขเวอร์ชันได้ docker run busybox:1.29.2

2. สั่งรัน busybox

PS C:\Users\phaisarn.sut\docker> docker run busybox

จะไม่มีอะไรแสดงออกมา
ลองต่อท้ายด้วย echo “hello world”

PS C:\Users\phaisarn.sut\docker> docker run busybox echo "hello world"
hello world

3. รัน Docker Container ใน interactive mode

PS C:\Users\phaisarn.sut\docker> docker run -i -t busybox
/ # ls
bin   dev   etc   home  proc  root  sys   tmp   usr   var
/ # touch a.txt
/ # ls
a.txt  bin    dev    etc    home   proc   root   sys    tmp    usr    var
/ # exit

ลองเข้าไปดูใหม่ จะไม่เห็นไฟล์ a.txt

PS C:\Users\phaisarn.sut\docker> docker run -i -t busybox
/ # ls
bin   dev   etc   home  proc  root  sys   tmp   usr   var
/ # exit
PS C:\Users\phaisarn.sut\docker>

เนื่องจากทุกครั้งที่ใช้คำสั่ง docker run จะเป็นการสร้าง container ใหม่เสมอ

PS C:\Users\phaisarn.sut\docker> docker container ls --all
CONTAINER ID        IMAGE               COMMAND                CREATED             STATUS                     PORTS               NAMES
ae196fc6697b        busybox             "sh"                   5 minutes ago       Exited (0) 5 minutes ago                       thirsty_noyce
0b6af65bb9e5        busybox             "sh"                   6 minutes ago       Exited (0) 6 minutes ago                       affectionate_ritchie
654143f8ca31        busybox             "sh"                   8 minutes ago       Exited (0) 8 minutes ago                       dreamy_elion
3b5a19fed682        busybox             "echo 'hello world'"   8 minutes ago       Exited (0) 8 minutes ago                       gallant_panini
3784621c161b        hello-world         "/hello"               9 minutes ago       Exited (0) 9 minutes ago                       stoic_shtern
16a6d036294f        hello-world         "/hello"               9 minutes ago       Exited (0) 9 minutes ago                       elastic_sammet

Link

ทดสอบการติดตั้ง Docker

1. Open a terminal window (Command Prompt or PowerShell, but not PowerShell ISE).

2. Run docker version to ensure that you have a supported version of Docker:

ดูเวอร์ชัน

PS C:\Users\phaisarn.sut> docker --version
Docker version 18.06.0-ce, build 0ffa825

ดูเวอร์ชันแบบละเอียด

PS C:\Users\phaisarn.sut> docker version
Client:
 Version:           18.06.0-ce
 API version:       1.38
 Go version:        go1.10.3
 Git commit:        0ffa825
 Built:             Wed Jul 18 19:05:28 2018
 OS/Arch:           windows/amd64
 Experimental:      false

Server:
 Engine:
  Version:          18.06.0-ce
  API version:      1.38 (minimum version 1.24)
  Go version:       go1.10.3
  Git commit:       0ffa825
  Built:            Wed Jul 18 19:23:19 2018
  OS/Arch:          windows/amd64
  Experimental:     false

3. Pull the hello-world image from Docker Hub and run a container:

PS C:\Users\phaisarn.sut> docker run hello-world
Unable to find image 'hello-world:latest' locally
latest: Pulling from library/hello-world
e46172273a4e: Pull complete
c012fa86f9e5: Pull complete
966bb4253d0f: Pull complete
4116cac73a40: Pull complete
Digest: sha256:4b8ff392a12ed9ea17784bd3c9a8b1fa3299cac44aca35a85c90c5e3c7afacdc
Status: Downloaded newer image for hello-world:latest

Hello from Docker!
This message shows that your installation appears to be working correctly.

To generate this message, Docker took the following steps:
 1. The Docker client contacted the Docker daemon.
 2. The Docker daemon pulled the "hello-world" image from the Docker Hub.
    (windows-amd64, nanoserver-1803)
 3. The Docker daemon created a new container from that image which runs the
    executable that produces the output you are currently reading.
 4. The Docker daemon streamed that output to the Docker client, which sent it
    to your terminal.

To try something more ambitious, you can run a Windows Server container with:
 PS C:\> docker run -it microsoft/windowsservercore powershell

Share images, automate workflows, and more with a free Docker ID:
 https://hub.docker.com/

For more examples and ideas, visit:
 https://docs.docker.com/engine/userguide/

รันคำสั่งอีกทีจะเหลือแค่นี้ละ คือมี image ละ ไม่ต้อง download ใหม่

PS C:\Users\phaisarn.sut> docker run hello-world

Hello from Docker!
This message shows that your installation appears to be working correctly.

To generate this message, Docker took the following steps:
 1. The Docker client contacted the Docker daemon.
 2. The Docker daemon pulled the "hello-world" image from the Docker Hub.
    (windows-amd64, nanoserver-1803)
 3. The Docker daemon created a new container from that image which runs the
    executable that produces the output you are currently reading.
 4. The Docker daemon streamed that output to the Docker client, which sent it
    to your terminal.

To try something more ambitious, you can run a Windows Server container with:
 PS C:\> docker run -it microsoft/windowsservercore powershell

Share images, automate workflows, and more with a free Docker ID:
 https://hub.docker.com/

For more examples and ideas, visit:
 https://docs.docker.com/engine/userguide/

4. List the hello-world image that was downloaded from Docker Hub:

PS C:\Users\phaisarn.sut> docker images
REPOSITORY          TAG                 IMAGE ID            CREATED             SIZE
hello-world         latest              739821c1f6d1        5 weeks ago         337MB

5. List the hello-world container (that exited after displaying “Hello from Docker!”):

PS C:\Users\phaisarn.sut> docker container ls --all
CONTAINER ID        IMAGE               COMMAND                   CREATED             STATUS                     PORTS               NAMES
a9becde5dbaf        hello-world         "cmd /C 'type C:\\hel…"   7 minutes ago       Exited (0) 7 minutes ago                       wonderful_chatterjee
PS C:\Users\phaisarn.sut>

6. Explore the Docker help pages by running some help commands:

> docker --help
> docker container --help
> docker container ls --help
> docker run --help

Link

ionic3: Remote Debugging

ติดตั้ง chrome ที่เครื่องคอม และที่มือถือ

ต่อสาย USB เชื่อมต่อเครื่องคอม และมือถือ

ที่เครื่องคอมเปิด chrome ไปที่ chrome://inspect

Continue reading

ionic3: การเพิ่มและรันแพลตฟอร์ม

Android และ iOS เป็นแบบ Debug โหมดมั้ง

Android

> ionic cordova platform rm android
> ionic cordova platform add android
> ionic cordova run android --device

iOS

> ionic cordova platform rm ios
> ionic cordova platform add ios
> ionic cordova run ios --device

browser

> ionic cordova platform rm browser
> ionic cordova platform add browser
> ionic cordova run browser

Continue reading

Multiple desktops บน Windows 10

Step 1: Add a desktop

  • คลิกที่ Task View ทางล่างซ้ายของหน้าจอ หรือกด Windows Key + Tab แล้วคลิกที่ New desktop หรือ
  • Windows Key + Ctrl + D

Step 2: Switch between desktops

  • Windows Key + Ctrl + Left Arrow หรือ
  • Windows Key + Ctrl + Right Arrow

Step 3: Move windows between desktops

  • กด Windows Key + Tab เพื่อแสดง Task View pane แล้ว
  • right-click ที่ widnows ที่ต้องการย้าย และเลือก Move to และเลือก desktop ที่ต้องการ

Step 4: Close a desktop

  • กด Windows Key + Ctrl + F4 เพื่อปิด desktop ปัจจุบัน แล้ว
  • กด Windows Key + Tab เพื่อแสดง Task View pane แล้วคลิก x ที่ desktop ที่ต้องการปิด

Continue reading