DevOps - The Must Know Checklist : 1 - Docker 3 වන කොටස

ja2k17ja

Member
May 10, 2017
188
166
0
තිස්සමහාරාම
DevOps - The Must Know Checklist : 1 - Docker 3 වන කොටස

DevOps - The Must Know Checklist : 1 - Docker 3 වන කොටස


මම අද පාඩමෙන් ඔයාලට කියල දෙන්නෙ අපි Docker containers එකිනෙක කාර්යක්‍ෂමව සම්බන්ද (link) කරන්නෙ කොහොමද කියල. අපි මේ සදහා යොදාගන්නෙ Docker හි තිබෙන Linking feature එක. එමගින් Docker containers එකිනෙක සම්බන්ද කිරීමට මෙන්ම ඒවා අතර පණිවිඩ හුවමාරු කරගැනීමද සිදු කරන්න පුළුවන්. මුලින්ම අපි Linking feature එක යොදා නොගෙන Docker containers දෙකක් අතර තොරතුරු හුවමාරු කරගන්නා ආකාරය බලමු.
උදාහරණයක් විදියට අපි Docker containers දෙකක් ගනිමු.
මින් container එකක් Database server එක ලෙසද අනෙක Web server එක ලෙසද සලකමු.


අපිට Web server එකේ සිට DB server එක access කරන්න සිදුවන විට අපිට මෙය ක්‍රම දෙකකට සිදු කරන්න පුළුවන් . මින් පළමු ක්‍රමය ලෙස මම කලින් පාඩමෙන් (Docker 1 වන කොටස) විස්තර කල ආකාරයට "p" flag එක බාවිතා කරල DB server එකේ listening port එක host server එකට bind කරලා එය හරහා access කිරීම සිදු කරනව. අපි දැන් පොඩ්ඩක් ඒ ගැනත් ට්‍රයි කරලා බලමු.


මුලින්ම අපි දැනගනිමු අපේ Docker host server එකේ docker0 කියන interface එකේ IP address එක අපිට මෙම IP තව ටික වෙලාවකින් අවශ්‍ය වෙනව.

ට්‍රයි ifconfig docker0
[email protected]:~$ ifconfig docker0
docker0 Link encap:Ethernet HWaddr 02:42:79:47:f2:76
inet addr:172.17.0.1 Bcast:0.0.0.0 Mask:255.255.0.0
inet6 addr: fe80::42:79ff:fe47:f276/64 Scope:Link
UP BROADCAST MULTICAST MTU:1500 Metric:1
RX packets:564 errors:0 dropped:0 overruns:0 frame:0
TX packets:904 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:0
RX bytes:40751 (40.7 KB) TX bytes:34227320 (34.2 MB)[email protected]:~$

අපිට මේ විදියට IP address එක විතරක් filter කරල ගන්න පුළුවන්.


ට්‍රයි ifconfig docker0|grep -Po 'inet addr:\K[\d.]+'
[email protected]:~$ ifconfig docker0|grep -Po 'inet addr:\K[\d.]+'
172.17.0.1
[email protected]:~$

මම මෙගිදී කරලා තියෙන දේ දැන් ඔයාලට ඔයාලට තේරුම් ගන්න පුළුවන්. මම ifconfig හි stdout එක pipe කරල තියෙනව grep කමාන්ඩ් එකකට. grep තමයි filter කරල දෙන්නෙ. මම grep ගැන වැඩි විස්තරයක් මූලික UNIX / Linux කමාන්ඩ්ස් පාඩම් මාලාවෙන් ඉදිරියට කියල දෙන්නම්. දැනට මේ කරලා තියන දේ තේරුම් ගන්න බලන්න.
අපි දැන් Docker host ගෙ docker0 interface එකේ IP address එකත් දන්නව.




දැන් අපි MySql Docker container එකක් සද ගනිමු. මුලින්ම mysql/mysql-server කියන Docker image එක Docker Hub එකෙන් download කරගෙන වැඩේ පටන් ගනිමු.


ට්‍රයි docker pull mysql/mysql-server
[email protected]:~$ docker pull mysql/mysql-server
Using default tag: latest
latest: Pulling from mysql/mysql-server
497341ef9d71: Pull complete
a96950115ae5: Pull complete
a0838d9e39a9: Pull complete
3041103f5205: Pull complete
Digest: sha256:02c46cf3805b917f086234aaec1c1bb1c94b1267c06d70128e28bd446e9ad601
Status: Downloaded newer image for mysql/mysql-server:latest
[email protected]:~$




ඊළගට අපි Docker container එක සදගනිමු (mysql-server). අපි එකට my_db කියල කියමු.


ට්‍රයි docker run --name my_db -d -p 3306:3306 -e MYSQL_ROOT_PASSWORD=my_supiri_pass mysql/mysql-server
[email protected]:~$ docker run --name my_db -d -p 3306:3306 -e MYSQL_ROOT_PASSWORD=my_supiri_pass mysql/mysql-server
dc70df523a7b6430033f801532910f11f4da4a75d33bbc1b745b234031a13c2d
[email protected]:~$

ඔයාල දැක්කද මම මෙහිදී d කියල flag එකක් බාවිතා කරල තියෙනව. අපි කලින් මේ d එක use කරල නැ. මේ d flag එකෙන් අපිට පුළුවන් Docker container එක daemon එකක් විදියට background එකේ රන් කරන්න. මේ කරුණත් ඔයාල මතක තියාගන්න.


අපිට මේ විදියට background එකේ රන් වන Docker container එකක stdout එකේ තියෙන දේවල් මෙන්න මේ විදියට බලාගන්න පුළුවන්.


ට්‍රයි docker logs my_db
[email protected]:~$ docker logs my_db
Initializing database
Database initialized
MySQL init process in progress...
Warning: Unable to load '/usr/share/zoneinfo/iso3166.tab' as time zone. Skipping it.
Warning: Unable to load '/usr/share/zoneinfo/zone.tab' as time zone. Skipping it.
Warning: Unable to load '/usr/share/zoneinfo/zone1970.tab' as time zone. Skipping it./entrypoint.sh: ignoring /docker-entrypoint-initdb.d/*MySQL init process done. Ready for start [email protected]:~$

මේක නිකන් හරියට අපි monitor එකක් connect කරා වගේ වැඩක්. :) අපි මෙහිදී බාවිතා කලේ docker logs කියන සබ් කමාන්ඩ් එක.


ට්‍රයි docker ps -a
[email protected]:~$ docker ps -a
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
dc70df523a7b mysql/mysql-server "/entrypoint.sh my..." 2 minutes ago Up 2 minutes 0.0.0.0:3306->3306/tcp, 33060/tcp my_db
[email protected]:~$

දැන් අපිට රන් වෙන mysql server එකක් තියෙනව. අපි ඊළගට එම server එකට ලොග් වෙලා මෙන්න මේ විදියට mysql server එක remote server එකකින් access කරන්න පුළුවන් විදියට හදා ගනිමු. මම මෙහිදී mysql ගෙ root එකවුන්ට් එක remote server එකකින් access කරන්න පුළුවන් විදියට permission සෙට් කරනව.
මම කරලා තියෙන දේ හොදින් බලන්න.


ට්‍රයි docker exec -it my_db bash
[email protected]:~$ docker exec -it my_db bash
bash-4.2#
දැන් මම ඉන්නෙ my_db container එකේ bash shell එකේ.
ට්‍රයි mysql -u root -pmy_supiri_pass

bash-4.2# mysql -u root -pmy_supiri_passmysql: [Warning] Using a password on the command line interface can be insecure.
Welcome to the MySQL monitor. Commands end with ; or \g.
Your MySQL connection id is 4
Server version: 5.7.18 MySQL Community Server (GPL)

Copyright (c) 2000, 2017, Oracle and/or its affiliates. All rights reserved.

Oracle is a registered trademark of Oracle Corporation and/or its
affiliates. Other names may be trademarks of their respective
owners.

Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.

mysql>




ට්‍රයි GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY 'my_supiri_pass' WITH GRANT OPTION; FLUSH PRIVILEGES;
mysql> GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY 'my_supiri_pass' WITH GRANT OPTION; FLUSH PRIVILEGES;
Query OK, 0 rows affected, 1 warning (0.00 sec)
Query OK, 0 rows affected (0.00 sec)
mysql>
ට්‍රයි \q
mysql> \q
Bye
bash-4.2#


ට්‍රයි exit
bash-4.2# exit
exit
[email protected]:~$ 




දැන් මම ඉන්නෙ Docker host ගෙ bash shell එකේ .


අපි බලමු web කියල Ubuntu image එකෙන් තව එක Docker container එකක් සාදාගන්න අපි මේ container එකේ සිට my_db එකේ mysql server එක access කරන්න බලමු.
මෙහිදී මට web කියන container එකට mysql-client කියන application එකත් install කරගන්න වෙනව. මම මේ mysql-client ගෙන් තමයි my_db එකේ තියෙන mysql server එකට connect වෙන්නෙ.


දැන් අපි හදමු web කියන container  එක 


ට්‍රයි docker run -it --name web ubuntu bash
[email protected]:~$ docker run -it --name web ubuntu bash
[email protected]:/#

දැන් අපිට web ගෙ bash shell එක ලැබිල තියෙන්නෙ.
ට්‍රයි apt-get update && apt-get install mysql-client -y
[email protected]:/# apt-get update && apt-get install mysql-client -yGet:1 http://security.ubuntu.com/ubuntu xenial-security InRelease [102 kB]
Get:2 http://archive.ubuntu.com/ubuntu xenial InRelease [247 kB]                      
Get:3 http://security.ubuntu.com/ubuntu xenial-security/universe Sources [39.9 kB]
---
---
---
Setting up libedit2:amd64 (3.1-20150325-1ubuntu2) ...Setting up libnuma1:amd64 (2.0.11-1ubuntu1) ...
Setting up libaio1:amd64 (0.3.110-2) ...
Setting up mysql-client-core-5.7 (5.7.18-0ubuntu0.16.04.1) ...
Setting up mysql-common (5.7.18-0ubuntu0.16.04.1) ...
update-alternatives: using /etc/mysql/my.cnf.fallback to provide /etc/mysql/my.cnf (my.cnf) in auto mode
Setting up mysql-client-5.7 (5.7.18-0ubuntu0.16.04.1) ...
Setting up mysql-client (5.7.18-0ubuntu0.16.04.1) ...
Processing triggers for libc-bin (2.23-0ubuntu9) ...
[email protected]:/#





අපි mysql-client install කරට පසු අපිට පුළුවන් web container එක තුල mysql කියන කමාන්ඩ් එක use කරන්න. දැන් අපි බලමු කොහොමද my_db එකේ තියෙන mysql server එක access කරන්නේ කියල.
අපි දැන් ඉන්නෙ web container හි bash shell එකේ. අපි මෙහිදී Docker host ගෙ docker0 interface එකේ IP address එක (172.17.0.1) යොදා ගනිමින් තමයි my_db එක access කරන්නෙ. මොකද අපි my_db ගෙ port 3306 එක Docker host ගේ සියලුම interfaces වල port 3306 ට bind කරලා තියෙන නිසා.


ට්‍රයි mysql -h 172.17.0.1 -u root -pmy_supiri_pass
[email protected]:/# mysql -h 172.17.0.1 -u root -pmy_supiri_pass
mysql: [Warning] Using a password on the command line interface can be insecure.
Welcome to the MySQL monitor. Commands end with ; or \g.
Your MySQL connection id is 7
Server version: 5.7.18 MySQL Community Server (GPL)Copyright (c) 2000, 2017, Oracle and/or its affiliates. All rights reserved.Oracle is a registered trademark of Oracle Corporation and/or its
affiliates. Other names may be trademarks of their respective
owners.Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.mysql> show databases;
+--------------------+
| Database |
+--------------------+
| information_schema |
| mysql |
| performance_schema |
| sys |
+--------------------+
4 rows in set (0.00 sec)mysql> \q
Bye
[email protected]:/#
ට්‍රයි  exit

දැක්ක නේද අපිට පුළුවන් දැන් 172.17.0.1 හරහා my_db එකේ තියෙන mysql server එක access කරන්න. නමුත් මේ ක්‍රමටය වැඩ සාර්ථක ක්‍රමයක් අපි ඊළගට ඉගෙන ගනිමු. මම ඔයාලට මේ ක්‍රමය කියල දුන්නෙ. ඉතා වැදගත් කරුණක් මෙහි තියෙන නිසා. එක තමයි අපි කොහොමද Docker host ගෙ IP එකක් හරහා Docker container එකක් තුලට ප්‍රවේශ වන ආකාරය දැන ගන්න.
දැන් ඔයාලට පුළුවන් මෙන්න මේ විදියට web හා my_db කියන Docker container දෙක delete කරන්න.


ට්‍රයි docker rm web


[email protected]:~$ docker rm webweb
[email protected]:~$

ට්‍රයි docker rm my_db
[email protected]:~$ docker rm my_db
Error response from daemon: You cannot remove a running container dc70df523a7b6430033f801532910f11f4da4a75d33bbc1b745b234031a13c2d. Stop the container before attempting removal or force remove
[email protected]:~$
හ්ම් එකියන්නේ අපිට රන් වෙන Docker container එකක් docker rm කියන සබ් කමාන්ඩ් එකෙන් delete කරන්න බැ කියල. අපිට මේ Docker container එක stop කරන්න වෙනව නැතිනම් force remove කරන්න වෙනව. දැන් බලමු කොහොමද force remove කරන්නෙ කියල.


ට්‍රයි docker rm -f my_db

දැන් docker ps -a පාරක් දල චෙක් කරගනිමු.
ට්‍රයි docker ps -a
[email protected]:~$ docker ps -a
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
[email protected]:~$

හරි containers දෙකම deleted වෙලා.




දැන් අපි බලමු Docker හි තිබෙන Linking කියන feature එක මගින් containers කොහොමද එකිනෙක සම්බන්ද කරන්නෙ කියල.
අපි නැවත වරක් my_db කියල MySql Docker container එකක් සද ගනිමු. කලින් වතාවේ වගේ නොවේ මෙහිදී අපි MySql listing port එක Docker host ට bind කරන්නෙ නෑ.


ට්‍රයි docker run --name my_db -d -e MYSQL_ROOT_PASSWORD=my_supiri_pass mysql/mysql-server
[email protected]:~$ docker run --name my_db -d -e MYSQL_ROOT_PASSWORD=my_supiri_pass mysql/mysql-server
31dbe953212cc15903ef7cbbf7a34043b1edf44fbc6f184901118fc9fa3a4515
[email protected]:~$

දැන් කලින් වතාවේ වාගේම root ට remote server එකකින් ලොග් වෙන්න permission දෙමු.


ට්‍රයි docker exec -it my_db bash
[email protected]:~$ docker exec -it my_db bash
bash-4.2#

ට්‍රයි mysql -u root -pmy_supiri_pass
bash-4.2# mysql -u root -pmy_supiri_pass
mysql: [Warning] Using a password on the command line interface can be insecure.
Welcome to the MySQL monitor. Commands end with ; or \g.
Your MySQL connection id is 3
Server version: 5.7.18 MySQL Community Server (GPL)Copyright (c) 2000, 2017, Oracle and/or its affiliates. All rights reserved.Oracle is a registered trademark of Oracle Corporation and/or its
affiliates. Other names may be trademarks of their respective
owners.Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.
mysql>


ට්‍රයි GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY 'my_supiri_pass' WITH GRANT OPTION; FLUSH PRIVILEGES;
mysql> GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY 'my_supiri_pass' WITH GRANT OPTION; FLUSH PRIVILEGES;
Query OK, 0 rows affected, 1 warning (0.00 sec)Query OK, 0 rows affected (0.00 sec)mysql>


ට්‍රයි \q
mysql> \q
Bye
bash-4.2#

ට්‍රයි exit
bash-4.2# exit
exit
[email protected]:~$
දැන් අපි හදමු web කියන container  එක, නමුත් මෙහිදී අපි my_db container එක web container එකට  link කරලමයි හදන්නෙ. මම ඔයාලට කරන විදිය පෙන්වන්නම්.
ට්‍රයි docker run -it --name web --link my_db:db1 ubuntu bash
[email protected]:~$ docker run -it --name web --link my_db:db1 ubuntu bash
[email protected]:/#
ඔයාලගේ අවදානය "--link my_db:db1" මෙන්න මේ කොටසට පොඩ්ඩක් යොමු කරන්න. මෙහිදී මම link කියන flag එක යොදාගෙන තමයි my_db එක web එකට සම්බන්ද කලේ. මෙහි දී link flag එක බාවිතා කරන ආකාරයක් තිබෙනව අපිට එය මේ විදියට නිරුපනය කරන්න පුළුවන් --link <source container එකේ නම>:<නව container එක තුලදී source container එක නියෝජනය කිරීමට යොදන නම්>
<නව container එක තුලදී source container එක නියෝජනය කිරීමට යොදන නම් (alias) > අපිට Database එක connect කරන විට Database host name එක විදියට web container එක තුල දී බාවිතා කරන්න පුළුවන්.
අපි මේ විදියට link flag එක යොදාගත් විට අපේ web container එකේ /etc/hosts file එකට ඉබේම my_db sever එකේ IP address එක ඇතුලත් වෙනවා.
ට්‍රයි cat /etc/hosts
[email protected]:/# cat /etc/hosts
127.0.0.1       localhost
::1     localhost ip6-localhost ip6-loopback
fe00::0 ip6-localnet
ff00::0 ip6-mcastprefix
ff02::1 ip6-allnodes
ff02::2 ip6-allrouters
172.17.0.2      db1 31dbe953212c my_db
172.17.0.3      48e62fd8caf7
[email protected]:/#
ඒවගේම  web container එකේ වෙනම Environmental variables ටිකකුත් සෙට් වෙනව. අපිට ඒ ටික මේ විදියට බලා ගන්න පුළුවන්.
ට්‍රයි env|grep DB1
[email protected]:/# env|grep DB1
DB1_ENV_PACKAGE_URL=https://repo.mysql.com/yum/mysql-5.7-community/docker/x86_64/mysql-community-server-minimal-5.7.18-1.el7.x86_64.rpm
DB1_PORT_3306_TCP_PORT=3306
DB1_PORT_33060_TCP_PORT=33060
DB1_PORT_3306_TCP=tcp://172.17.0.2:3306
DB1_PORT_33060_TCP=tcp://172.17.0.2:33060
DB1_PORT_33060_TCP_ADDR=172.17.0.2
DB1_PORT_3306_TCP_ADDR=172.17.0.2
DB1_PORT_3306_TCP_PROTO=tcp
DB1_ENV_MYSQL_ROOT_PASSWORD=my_supiri_pass
DB1_PORT=tcp://172.17.0.2:3306
DB1_PORT_33060_TCP_PROTO=tcp
DB1_NAME=/web/db1
[email protected]:/# 
මෙහි DB1 කියල පෙන්නන්නෙ අපි දීපු alias  එක (<නව container එක තුලදී source container එක නියෝජනය කිරීමට යොදන නම්>)
දැන් අපි web container එකට mysql-client install කරල db1 හෙවත් my_db එකට connect වෙන්න බලමු.


ට්‍රයි apt-get update && apt-get install mysql-client -y
[email protected]:/# apt-get update && apt-get install mysql-client -y
Get:1 http://archive.ubuntu.com/ubuntu xenial InRelease [247 kB]
Get:2 http://security.ubuntu.com/ubuntu xenial-security InRelease [102 kB]
Get:3 http://security.ubuntu.com/ubuntu xenial-security/universe Sources [39.9 kB]
---
---
---
Setting up libnuma1:amd64 (2.0.11-1ubuntu1) ...
Setting up libaio1:amd64 (0.3.110-2) ...
Setting up mysql-client-core-5.7 (5.7.18-0ubuntu0.16.04.1) ...
Setting up mysql-common (5.7.18-0ubuntu0.16.04.1) ...
update-alternatives: using /etc/mysql/my.cnf.fallback to provide /etc/mysql/my.cnf (my.cnf) in auto mode
Setting up mysql-client-5.7 (5.7.18-0ubuntu0.16.04.1) ...
Setting up mysql-client (5.7.18-0ubuntu0.16.04.1) ...
Processing triggers for libc-bin (2.23-0ubuntu9) ...
[email protected]:/#

අපි mysql-client install කරට පසු අපිට පුළුවන් web container එක තුල mysql කමාන්ඩ් එක use කරල db1 (my_db) එකේ තියෙන MySql server එක access කරන්න. අපි මෙහිදී my_db හි IP වෙනුවට alias යොදාගෙන තමයි connect වෙන්නෙ.ට්‍රයි mysql -h db1 -u root -pmy_supiri_pass
[email protected]:/# mysql -h db1 -u root -pmy_supiri_pass
mysql: [Warning] Using a password on the command line interface can be insecure.
Welcome to the MySQL monitor.  Commands end with ; or \g.
Your MySQL connection id is 4
Server version: 5.7.18 MySQL Community Server (GPL)
Copyright (c) 2000, 2017, Oracle and/or its affiliates. All rights reserved.
Oracle is a registered trademark of Oracle Corporation and/or its
affiliates. Other names may be trademarks of their respective
owners.
Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.
mysql> 
ට්‍රයි \q
දැන් මම web container එකෙන් exit වෙලා හදපු Docker containers සියල්ලම මේ විදියට delete කරල දානව.
ට්‍රයි exit
delete කරන්න කලින් docker ps -a පාරක් දල බලමු 
ට්‍රයි docker ps -a
[email protected]:~$ docker ps -a
CONTAINER ID        IMAGE                COMMAND                  CREATED             STATUS                          PORTS                 NAMES
48e62fd8caf7        ubuntu               "bash"                   32 minutes ago      Exited (0) About a minute ago                         web
31dbe953212c        mysql/mysql-server   "/entrypoint.sh my..."   42 minutes ago      Up 42 minutes                   3306/tcp, 33060/tcp   my_db
[email protected]:~$
දැන් delete කරමු.
ට්‍රයි docker rm -f $(docker ps -aq)
[email protected]:~$ docker rm -f $(docker ps -aq)
48e62fd8caf7
31dbe953212c
[email protected]:~$
ඔයාල මේ කමාන්ඩ් එක වැඩ කරන ආකාරය තේරුම් ගන්න උත්සාහ කරන්න. පොඩි උදව්වක් දෙන්නම්. delete කරන්න කලින් "docker ps -aq" මේ කමාන්ඩ් එක මුලින් දීල බලන්න.
එතකොට ලැබෙන output එක බැලුවම ඔයාලට තේරුම් ගන්න පුළුවන්. ඊට පස්සෙ සම්පූර්ණ කමාන්ඩ් එකම දීල delete කරල දාන්න.
අන්තිමටම docker ps -a පාරක් දල චෙක් කරගන්න.
ට්‍රයි docker ps -a
[email protected]:~$ docker ps -a
CONTAINER ID        IMAGE               COMMAND             CREATED             STATUS              PORTS               NAMES
[email protected]:~$ 
සියලුම Docker containers ටික deleted !
අපි Docker 4 වන කොටසින් හමුවෙමු.
ස්තුතියි!
 
Last edited:
May 7, 2016
12,777
1,018
0
තොප්පිගල
:cool::cool:
++
11.gif
11.gif
 

ja2k17ja

Member
May 10, 2017
188
166
0
තිස්සමහාරාම


Thanks for doing this series. :)

සියලු දෙනාටම ස්තුතියි!

Docker 4 වන කොටසට පසුව. Docker-machine ගැන කියල දෙනව.
මට හිතෙන්නෙ DevOps පාඩම පොඩ්ඩකට නතර කරලා cloud computing ගැන ටිකක් කතා කරන්න. හුග දෙනෙක් Visualization ගැන අහල තිබුන. මම ඉන්න පළාතට මේ දවස් වල හරිම රස්නෙයි. දවල් දවසට කිසිම දෙයක් කරන්න හිතෙන්නෑ. එපා වෙනව. පුළුවන් විදියට පාඩම් ටික දාන්න ට්‍රයි කරන්නම්.
 
May 7, 2016
12,777
1,018
0
තොප්පිගල
සියලු දෙනාටම ස්තුතියි!

Docker 4 වන කොටසට පසුව. Docker-machine ගැන කියල දෙනව.
මට හිතෙන්නෙ DevOps පාඩම පොඩ්ඩකට නතර කරලා cloud computing ගැන ටිකක් කතා කරන්න. හුග දෙනෙක් Visualization ගැන අහල තිබුන. මම ඉන්න පළාතට මේ දවස් වල හරිම රස්නෙයි. දවල් දවසට කිසිම දෙයක් කරන්න හිතෙන්නෑ. එපා වෙනව. පුළුවන් විදියට පාඩම් ටික දාන්න ට්‍රයි කරන්නම්.


එල මචෝ
වැඩේ දිගටම කරගෙන යන්න
:cool::cool: