2 Ndday
2 Ndday
yml
version: "3"
services:
web:
image: ur16c158/app3:first_imp
deploy:
replicas: 5
resources:
limits:
cpus: "0.1"
memory: 50M
restart_policy:
condition: on-failure
ports:
- "4000:80"
networks:
- webnet
networks:
webnet:
docker-compose.yml
version: '3'
services:
jenkins:
container_name: jenkins
image: jenkins/jenkins
ports:
- "8080:8080"
volumes:
- "/home/foss/jenkins-data/jenkins_home:/var/jenkins_home"
networks:
- net
networks:
net:
foss@foss:~$ cd test/
foss@foss:~/test$ ls
app.py Dockerfile requirements.txt
foss@foss:~/test$ sudo gedit docker-compose.yml
[sudo] password for foss:
** (gedit:3039): WARNING **: 14:15:26.064: Set document metadata failed: Setting attribute
metadata::gedit-spell-language not supported
** (gedit:3039): WARNING **: 14:15:26.066: Set document metadata failed: Setting attribute
metadata::gedit-encoding not supported
** (gedit:3039): WARNING **: 14:17:29.251: Set document metadata failed: Setting attribute
metadata::gedit-spell-language not supported
** (gedit:3039): WARNING **: 14:17:29.252: Set document metadata failed: Setting attribute
metadata::gedit-encoding not supported
** (gedit:3039): WARNING **: 14:19:42.371: Set document metadata failed: Setting attribute
metadata::gedit-spell-language not supported
** (gedit:3039): WARNING **: 14:19:42.372: Set document metadata failed: Setting attribute
metadata::gedit-encoding not supported
** (gedit:3039): WARNING **: 14:20:04.772: Set document metadata failed: Setting attribute
metadata::gedit-position not supported
foss@foss:~/test$ sudo docker swarm init
[sudo] password for foss:
Swarm initialized: current node (8xf19l0tkqqkyo23f5w7e8g10) is now a manager.
To add a manager to this swarm, run 'docker swarm join-token manager' and follow the instructions.
foss@foss:~/test$ ls
app.py docker-compose.yml Dockerfile requirements.txt
foss@foss:~/test$ sudo docker stack deploy -c docker-compose.yml hello1
Creating network hello1_webnet
Creating service hello1_web
foss@foss:~/test$ sudo gedit docker-compose.yml
** (gedit:4533): WARNING **: 14:27:47.675: Set document metadata failed: Setting attribute
metadata::gedit-spell-language not supported
** (gedit:4533): WARNING **: 14:27:47.676: Set document metadata failed: Setting attribute
metadata::gedit-encoding not supported
** (gedit:4533): WARNING **: 14:28:07.092: Set document metadata failed: Setting attribute
metadata::gedit-position not supported
foss@foss:~/test$ sudo gedit requirements.txt
** (gedit:4620): WARNING **: 14:28:47.395: Set document metadata failed: Setting attribute
metadata::gedit-spell-language not supported
** (gedit:4620): WARNING **: 14:28:47.399: Set document metadata failed: Setting attribute
metadata::gedit-encoding not supported
last
foss@foss:~$ cd test/
foss@foss:~/test$ ls
app.py Dockerfile requirements.txt
foss@foss:~/test$ sudo gedit docker-compose.yml
[sudo] password for foss:
** (gedit:3039): WARNING **: 14:15:26.064: Set document metadata failed: Setting attribute
metadata::gedit-spell-language not supported
** (gedit:3039): WARNING **: 14:15:26.066: Set document metadata failed: Setting attribute
metadata::gedit-encoding not supported
** (gedit:3039): WARNING **: 14:17:29.251: Set document metadata failed: Setting attribute
metadata::gedit-spell-language not supported
** (gedit:3039): WARNING **: 14:17:29.252: Set document metadata failed: Setting attribute
metadata::gedit-encoding not supported
** (gedit:3039): WARNING **: 14:19:42.371: Set document metadata failed: Setting attribute
metadata::gedit-spell-language not supported
** (gedit:3039): WARNING **: 14:19:42.372: Set document metadata failed: Setting attribute
metadata::gedit-encoding not supported
** (gedit:3039): WARNING **: 14:20:04.772: Set document metadata failed: Setting attribute
metadata::gedit-position not supported
foss@foss:~/test$ sudo docker swarm init
[sudo] password for foss:
Swarm initialized: current node (8xf19l0tkqqkyo23f5w7e8g10) is now a manager.
To add a manager to this swarm, run 'docker swarm join-token manager' and follow the instructions.
foss@foss:~/test$ ls
app.py docker-compose.yml Dockerfile requirements.txt
foss@foss:~/test$ sudo docker stack deploy -c docker-compose.yml hello1
Creating network hello1_webnet
Creating service hello1_web
foss@foss:~/test$ sudo gedit docker-compose.yml
** (gedit:4533): WARNING **: 14:27:47.675: Set document metadata failed: Setting attribute
metadata::gedit-spell-language not supported
** (gedit:4533): WARNING **: 14:27:47.676: Set document metadata failed: Setting attribute
metadata::gedit-encoding not supported
** (gedit:4533): WARNING **: 14:28:07.092: Set document metadata failed: Setting attribute
metadata::gedit-position not supported
foss@foss:~/test$ sudo gedit requirements.txt
** (gedit:4620): WARNING **: 14:28:47.395: Set document metadata failed: Setting attribute
metadata::gedit-spell-language not supported
** (gedit:4620): WARNING **: 14:28:47.399: Set document metadata failed: Setting attribute
metadata::gedit-encoding not supported
** (gedit:4620): WARNING **: 14:34:38.091: Set document metadata failed: Setting attribute
metadata::gedit-position not supported
foss@foss:~/test$
foss@foss:~/test$ sudo gedit docker-compose.yml
** (gedit:5329): WARNING **: 14:35:40.172: Set document metadata failed: Setting attribute
metadata::gedit-position not supported
foss@foss:~/test$ sudo docker stack deploy -c docker-compose.yml hello1
[sudo] password for foss:
Updating service hello1_web (id: cq35jh2yku3ik58q5qxzs8fed)
foss@foss:~/test$ sudo docker ps
CONTAINER ID IMAGE COMMAND CREATED STATUS
PORTS NAMES
8fe84b8830dd ur16c158/app3:first_imp "python app.py" 26 minutes ago Up 26 minutes
80/tcp hello1_web.1.v4bazuprgtkrtb0yjbefay79m
43f7b600b4dc ur16c158/app3:first_imp "python app.py" 26 minutes ago Up 26 minutes
80/tcp hello1_web.4.tqvu9mdinrbrv36k5d53vlo30
56b84e75670f ur16c158/app3:first_imp "python app.py" 26 minutes ago Up 26 minutes
80/tcp hello1_web.2.rs8d902ihf5u7q6jxkznffy6o
c5da8ba5081c ur16c158/app3:first_imp "python app.py" 26 minutes ago Up 26 minutes
80/tcp hello1_web.3.53lqyl5e3u39j3s5y1syx1y2s
dd078f8ecc55 ur16c158/app3:first_imp "python app.py" 26 minutes ago Up 26 minutes
80/tcp hello1_web.5.drrj2r0ur311loqwjlpssnn00
foss@foss:~/test$ sudo docker rm -f c5da
c5da
foss@foss:~/test$ sudo docker ps
CONTAINER ID IMAGE COMMAND CREATED STATUS
PORTS NAMES
8fe84b8830dd ur16c158/app3:first_imp "python app.py" 29 minutes ago Up 29 minutes
80/tcp hello1_web.1.v4bazuprgtkrtb0yjbefay79m
43f7b600b4dc ur16c158/app3:first_imp "python app.py" 29 minutes ago Up 29 minutes
80/tcp hello1_web.4.tqvu9mdinrbrv36k5d53vlo30
56b84e75670f ur16c158/app3:first_imp "python app.py" 29 minutes ago Up 29 minutes
80/tcp hello1_web.2.rs8d902ihf5u7q6jxkznffy6o
dd078f8ecc55 ur16c158/app3:first_imp "python app.py" 29 minutes ago Up 29 minutes
80/tcp hello1_web.5.drrj2r0ur311loqwjlpssnn00
foss@foss:~/test$ sudo docker ps -aq
c21cd6de7d5f
8fe84b8830dd
43f7b600b4dc
56b84e75670f
dd078f8ecc55
d98b52e4a3c8
43fcedab5a90
586f24171b32
72c168936999
51e0ec3383c6
d10a31b5a444
70a97d3425df
e7f1d720f0a2
7822a400d5de
ce2276a36acb
f7eddd5a3b58
f20450ee64e0
foss@foss:~/test$ sudo rm -f $(sudo docker ps -aq)
foss@foss:~/test$ sudo docker ps
CONTAINER ID IMAGE COMMAND CREATED STATUS
PORTS NAMES
c21cd6de7d5f ur16c158/app3:first_imp "python app.py" 2 minutes ago Up 2 minutes
80/tcp hello1_web.3.xdief20ew0jwhjxvgase4en5b
8fe84b8830dd ur16c158/app3:first_imp "python app.py" 32 minutes ago Up 31 minutes
80/tcp hello1_web.1.v4bazuprgtkrtb0yjbefay79m
43f7b600b4dc ur16c158/app3:first_imp "python app.py" 32 minutes ago Up 31 minutes
80/tcp hello1_web.4.tqvu9mdinrbrv36k5d53vlo30
56b84e75670f ur16c158/app3:first_imp "python app.py" 32 minutes ago Up 31 minutes
80/tcp hello1_web.2.rs8d902ihf5u7q6jxkznffy6o
dd078f8ecc55 ur16c158/app3:first_imp "python app.py" 32 minutes ago Up 31 minutes
80/tcp hello1_web.5.drrj2r0ur311loqwjlpssnn00
foss@foss:~/test$ sudo docker swarm leave --force
Node left the swarm.
foss@foss:~/test$ sudo docker ps
CONTAINER ID IMAGE COMMAND CREATED STATUS
PORTS NAMES
foss@foss:~/test$ $ mkdir composetest
$: command not found
foss@foss:~/test$ cd \
>
foss@foss:~$ $ mkdir composetest
$: command not found
foss@foss:~$ mkdir composetest
foss@foss:~$ cd composetest
foss@foss:~/composetest$ sudo nano app.py
foss@foss:~/composetest$ sudo nano requirements.txt
foss@foss:~/composetest$ ls
app.py requirements.txt
foss@foss:~/composetest$ sudo nano Dockerfie
foss@foss:~/composetest$ sudo nano docker-compose.yml
foss@foss:~/composetest$ ls
app.py docker-compose.yml Dockerfie requirements.txt
foss@foss:~/composetest$ docker-compose up
ERROR: Couldn't connect to Docker daemon - you might need to run `docker-machine start
default`.
foss@foss:~/composetest$ sudo docker-compose up
Creating network "composetest_default" with the default driver
Building web
ERROR: Cannot locate specified Dockerfile: Dockerfile
foss@foss:~/composetest$ sudo docker-compose up
Building web
ERROR: Cannot locate specified Dockerfile: Dockerfile
foss@foss:~/composetest$ sudo docker-compose up
Building web
ERROR: Cannot locate specified Dockerfile: Dockerfile
foss@foss:~/composetest$ sudo docker-compose up .
ERROR: No such service: .
foss@foss:~/composetest$ sudo docker-compose up
Building web
ERROR: Cannot locate specified Dockerfile: Dockerfile
foss@foss:~/composetest$ docker-compose up
ERROR: Couldn't connect to Docker daemon - you might need to run `docker-machine start
default`.
foss@foss:~/composetest$ docker-machine start default
open /home/foss/.docker/machine/machines/default/config.json: permission denied
foss@foss:~/composetest$ sudo docker-compose up
Building web
ERROR: Cannot locate specified Dockerfile: Dockerfile
foss@foss:~/composetest$ sudo nano app.py
foss@foss:~/composetest$ cd /
foss@foss:/$ sudo docker-compose up
ERROR:
Can't find a suitable configuration file in this directory or any
parent. Are you in the right directory?
foss@foss:/$ cd composetest
bash: cd: composetest: No such file or directory
foss@foss:/$ cd composetest/
bash: cd: composetest/: No such file or directory
foss@foss:/$ ls
bin cdrom etc initrd.img lib lost+found mnt proc run snap swapfile tmp var
boot dev home initrd.img.old lib64 media opt root sbin srv sys usr vmlinuz
foss@foss:/$ mkdir composetest
mkdir: cannot create directory ‘composetest’: Permission denied
new
foss@foss:~/composetest$ cd /
foss@foss:/$ sudo docker pull jenkins/jenkins
[sudo] password for foss:
Using default tag: latest
latest: Pulling from jenkins/jenkins
Digest: sha256:24ed9021e3e07cc0daaca21886cfd64942ea59bc39169f39a0efdfc9eb2b26ce
Status: Image is up to date for jenkins/jenkins:latest
foss@foss:/$ sudo docker images
REPOSITORY TAG IMAGE ID CREATED SIZE
composetest_web latest 26f896af6be1 4 minutes ago 83.8MB
ur16c158/app3 first_imp 2fd539eefd53 24 hours ago 131MB
hello1 latest 2fd539eefd53 24 hours ago 131MB
<none> <none> 3b95a87135e4 24 hours ago 131MB
<none> <none> 49ee97995cb8 24 hours ago 131MB
<none> <none> 17f6fba07309 25 hours ago 131MB
redis alpine 3d2a373f46ae 31 hours ago 50.8MB
python 3.4-alpine 5813992167c4 35 hours ago 72.2MB
jenkins/jenkins latest 3a79f3b60a8d 5 days ago 704MB
busybox latest d8233ab899d4 3 weeks ago 1.2MB
centos latest 1e1148e4cc2c 3 months ago 202MB
am0attacker/app1 test 9a957b963e00 4 months ago 132MB
firstapp latest 9a957b963e00 4 months ago 132MB
python 2.7-slim 14dad3ead5f4 5 months ago 120MB
nginx latest be1f31be9a87 5 months ago 109MB
hello-world latest 4ab4c602aa5e 6 months ago 1.84kB
atbaker/nginx-example latest 93db65d92319 3 years ago 93.5MB
foss@foss:/$ sudo du -sh /var/lib/docker
1.6G /var/lib/docker
foss@foss:/$ mkdir jenkins
mkdir: cannot create directory ‘jenkins’: Permission denied
foss@foss:/$ mkdir jenkins
mkdir: cannot create directory ‘jenkins’: Permission denied
foss@foss:/$ mkdir jenkins
mkdir: cannot create directory ‘jenkins’: Permission denied
foss@foss:/$ mv jenkins
mv: missing destination file operand after 'jenkins'
Try 'mv --help' for more information.
foss@foss:/$ ls
bin dev initrd.img lib64 mnt root snap sys var
boot etc initrd.img.old lost+found opt run srv tmp vmlinuz
cdrom home lib media proc sbin swapfile usr
foss@foss:/$ mkdir jenkins
mkdir: cannot create directory ‘jenkins’: Permission denied
foss@foss:/$ mkdir jenkins
mkdir: cannot create directory ‘jenkins’: Permission denied
foss@foss:/$ sudo mkdir jenkins
foss@foss:/$ mv jenkins
mv: missing destination file operand after 'jenkins'
Try 'mv --help' for more information.
foss@foss:/$ ls
bin dev initrd.img lib media proc sbin swapfile usr
boot etc initrd.img.old lib64 mnt root snap sys var
cdrom home jenkins lost+found opt run srv tmp vmlinuz
foss@foss:/$ sudo mv jenkins
mv: missing destination file operand after 'jenkins'
Try 'mv --help' for more information.
foss@foss:/$ sudo mv jenkins/ jenkins-data
foss@foss:/$ cd jenkins-data/
foss@foss:/jenkins-data$ sudo gedit docker-compose.yml
** (gedit:8043): WARNING **: 15:48:47.889: Set document metadata failed: Setting attribute
metadata::gedit-spell-language not supported
** (gedit:8043): WARNING **: 15:48:47.890: Set document metadata failed: Setting attribute
metadata::gedit-encoding not supported
** (gedit:8043): WARNING **: 15:48:49.224: Set document metadata failed: Setting attribute
metadata::gedit-position not supported
foss@foss:/jenkins-data$ id
uid=1000(foss) gid=1000(foss)
groups=1000(foss),4(adm),24(cdrom),27(sudo),30(dip),46(plugdev),116(lpadmin),126(sambashare)
foss@foss:/jenkins-data$ ls
docker-compose.yml
foss@foss:/jenkins-data$ mkdir jenkins_home
mkdir: cannot create directory ‘jenkins_home’: Permission denied
foss@foss:/jenkins-data$ sudo mkdir jenkins_home
foss@foss:/jenkins-data$ sudo chown 1000:1000 jenkins_home -R
foss@foss:/jenkins-data$ sudo docker ps
CONTAINER ID IMAGE COMMAND CREATED STATUS
PORTS NAMES
129c8d733e51 redis:alpine "docker-entrypoint.s…" 20 minutes ago Up 20 minutes
6379/tcp composetest_redis_1
d349dfa56e6b composetest_web "python app.py" 20 minutes ago Up 20 minutes
0.0.0.0:5000->5000/tcp composetest_web_1
foss@foss:/jenkins-data$ sudo docker-compose up -d
ERROR: The Compose file './docker-compose.yml' is invalid because:
Unsupported config option for services.networks: 'net'
foss@foss:/jenkins-data$ sudo gedit docker-compose.yml
** (gedit:8096): WARNING **: 15:53:13.674: Set document metadata failed: Setting attribute
metadata::gedit-spell-language not supported
** (gedit:8096): WARNING **: 15:53:13.675: Set document metadata failed: Setting attribute
metadata::gedit-encoding not supported
** (gedit:8096): WARNING **: 15:53:16.324: Set document metadata failed: Setting attribute
metadata::gedit-spell-language not supported
** (gedit:8096): WARNING **: 15:53:16.325: Set document metadata failed: Setting attribute
metadata::gedit-encoding not supported
** (gedit:8096): WARNING **: 15:53:17.128: Set document metadata failed: Setting attribute
metadata::gedit-position not supported
foss@foss:/jenkins-data$ sudo docker-compose up -d
Creating network "jenkinsdata_net" with the default driver
Creating jenkins ...
Creating jenkins ... done
foss@foss:/jenkins-data$ sudo gedit docker-compose.yml
** (gedit:8409): WARNING **: 15:54:31.015: Set document metadata failed: Setting attribute
metadata::gedit-position not supported
foss@foss:/jenkins-data$ sudo docker ps
CONTAINER ID IMAGE COMMAND CREATED STATUS
PORTS NAMES
129c8d733e51 redis:alpine "docker-entrypoint.s…" 24 minutes ago Up 24 minutes
6379/tcp composetest_redis_1
d349dfa56e6b composetest_web "python app.py" 24 minutes ago Up 24 minutes
0.0.0.0:5000->5000/tcp composetest_web_1
foss@foss:/jenkins-data$ sudo docker-compose up -d
Starting jenkins ...
Starting jenkins ... done
foss@foss:/jenkins-data$ sudo docker ps
CONTAINER ID IMAGE COMMAND CREATED STATUS
PORTS NAMES
129c8d733e51 redis:alpine "docker-entrypoint.s…" 25 minutes ago Up 25 minutes
6379/tcp composetest_redis_1
d349dfa56e6b composetest_web "python app.py" 25 minutes ago Up 25 minutes
0.0.0.0:5000->5000/tcp composetest_web_1
foss@foss:/jenkins-data$ sudo chown 1000:1000 jenkins_home -R
foss@foss:/jenkins-data$ sudo docker-compose up -d
Starting jenkins ...
Starting jenkins ... done
foss@foss:/jenkins-data$ sudo docker ps
CONTAINER ID IMAGE COMMAND CREATED STATUS
PORTS NAMES
129c8d733e51 redis:alpine "docker-entrypoint.s…" 29 minutes ago Up 29 minutes
6379/tcp composetest_redis_1
d349dfa56e6b composetest_web "python app.py" 29 minutes ago Up 29 minutes
0.0.0.0:5000->5000/tcp composetest_web_1
foss@foss:/jenkins-data$ sudo docker-compose up -d
Starting jenkins ...
Starting jenkins ... done
foss@foss:/jenkins-data$
new
^X^Z
[1]+ Stopped sudo docker-compose up
foss@foss:~/composetest$ cd /
foss@foss:/$