- Editer votre fichier Dockerfile
[root@ip-172-31-37-139 docker]# cat Dockerfile
FROM php:8.2-apache
WORKDIR /data/docker
COPY . /data/web/pp.blog/
EXPOSE 80
- Créér votre image docker
[root@ip-172-31-37-139 docker]# docker build -t my-php-app .
[+] Building 10.8s (8/8) FINISHED docker:default
=> [internal] load build definition from Dockerfile 0.0s
=> => transferring dockerfile: 171B 0.0s
=> [internal] load metadata for docker.io/library/php:8.2-apache 0.6s
=> [internal] load .dockerignore 0.0s
=> => transferring context: 2B 0.0s
=> [1/3] FROM docker.io/library/php:8.2-apache@sha256:e66f0f7fcb0ff2c5fdccb662896521ac69312d3f5f18973ba3fac8e77b824c10 9.8s
=> => resolve docker.io/library/php:8.2-apache@sha256:e66f0f7fcb0ff2c5fdccb662896521ac69312d3f5f18973ba3fac8e77b824c10 0.0s
=> => sha256:e66f0f7fcb0ff2c5fdccb662896521ac69312d3f5f18973ba3fac8e77b824c10 10.35kB / 10.35kB 0.0s
=> => sha256:ce1261c6d567efa8e3b457673eeeb474a0a8066df6bb95ca9a6a94a31e219dd3 29.77MB / 29.77MB 0.5s
=> => sha256:74b8f322c3ad8bb4b39e086cba63fa8d56891ef91beefcdcabd0242d7475985d 11.53kB / 11.53kB 0.0s
=> => sha256:70bb6b41f165fc132a739c330a5a9c36d7cf2802afa513c5022f271faed87e96 117.84MB / 117.84MB 2.6s
=> => sha256:0dfd2b007c6c32f23367dd1101539e2f0153c90d8286302717ee4e31b307a435 3.82kB / 3.82kB 0.0s
=> => sha256:48ebd04f4983bbe65e67c4185e1ec3bcde92727bb40e759c0c908c67da8061b5 225B / 225B 0.1s
=> => sha256:945024922144282c29a6aa88270e089fd811e36be4e488ef28c166cc98d359a2 226B / 226B 0.2s
=> => sha256:2e432d6184b2b78c83ff23e2cb792f037e3b01d66f09cff2051d47877d15794b 4.22MB / 4.22MB 0.5s
=> => extracting sha256:ce1261c6d567efa8e3b457673eeeb474a0a8066df6bb95ca9a6a94a31e219dd3 2.0s
=> => sha256:c4f07164d4bff49b210440820f12de98d43b09b593147f17bd8b457886c9eefd 480B / 480B 0.6s
=> => sha256:d4f032b51ed9b861f00e3782d8dd2892abc8da6af9cfa7d21a0ee2bca2db8c17 426B / 426B 0.7s
=> => sha256:08a8f3c4034a4d970c604a004455d8e4ec3032a9fe9a9ee9204d360fec19e4fc 488B / 488B 0.8s
=> => sha256:7ba7adab300af10e637c47db3381561c12f92843a165c99aa16dca20a7f087df 12.33MB / 12.33MB 1.0s
=> => sha256:aecd457091159dd6b03d3fd06cc2b313344e97d5aebeb416dab36ae45ae4551a 11.46MB / 11.46MB 1.4s
=> => sha256:80da6eb38538300c90fc603f0f20b91644aa344ce7ddda7b4d196c6ffaf7bc11 2.46kB / 2.46kB 1.1s
=> => sha256:5a7c38055062139483605d08b890258311fec7f9b52d3b190c80b56439e913ae 251B / 251B 1.2s
=> => sha256:9dcc750708704ba428714146884f1f200117fe7cd72bcf09d8247acc56a9980f 246B / 246B 1.3s
=> => sha256:1f8d884fef54398fda475516682678bd45554ba28b2f3cc5efa4ec421bae67f2 891B / 891B 1.4s
=> => sha256:4f4fb700ef54461cfa02571ae0db9a0dc1e0cdb5577484a6d75e68dc38e8acc1 32B / 32B 1.5s
=> => extracting sha256:48ebd04f4983bbe65e67c4185e1ec3bcde92727bb40e759c0c908c67da8061b5 0.0s
=> => extracting sha256:70bb6b41f165fc132a739c330a5a9c36d7cf2802afa513c5022f271faed87e96 5.1s
=> => extracting sha256:945024922144282c29a6aa88270e089fd811e36be4e488ef28c166cc98d359a2 0.0s
=> => extracting sha256:2e432d6184b2b78c83ff23e2cb792f037e3b01d66f09cff2051d47877d15794b 0.3s
=> => extracting sha256:d4f032b51ed9b861f00e3782d8dd2892abc8da6af9cfa7d21a0ee2bca2db8c17 0.0s
=> => extracting sha256:c4f07164d4bff49b210440820f12de98d43b09b593147f17bd8b457886c9eefd 0.0s
=> => extracting sha256:7ba7adab300af10e637c47db3381561c12f92843a165c99aa16dca20a7f087df 0.1s
=> => extracting sha256:08a8f3c4034a4d970c604a004455d8e4ec3032a9fe9a9ee9204d360fec19e4fc 0.0s
=> => extracting sha256:aecd457091159dd6b03d3fd06cc2b313344e97d5aebeb416dab36ae45ae4551a 0.6s
=> => extracting sha256:80da6eb38538300c90fc603f0f20b91644aa344ce7ddda7b4d196c6ffaf7bc11 0.0s
=> => extracting sha256:5a7c38055062139483605d08b890258311fec7f9b52d3b190c80b56439e913ae 0.0s
=> => extracting sha256:9dcc750708704ba428714146884f1f200117fe7cd72bcf09d8247acc56a9980f 0.0s
=> => extracting sha256:1f8d884fef54398fda475516682678bd45554ba28b2f3cc5efa4ec421bae67f2 0.0s
=> => extracting sha256:4f4fb700ef54461cfa02571ae0db9a0dc1e0cdb5577484a6d75e68dc38e8acc1 0.0s
=> [internal] load build context 0.0s
=> => transferring context: 171B 0.0s
=> [2/3] WORKDIR /data/docker 0.1s
=> [3/3] COPY . /data/web/pp.blog/ 0.0s
=> exporting to image 0.1s
=> => exporting layers 0.0s
=> => writing image sha256:5cbe2eef3502a2e23a18e07b00e184e3b8928f2610399a0c2d37e1e2684256de 0.0s
=> => naming to docker.io/library/my-php-app 0.0s
- Afficher votre image
[root@ip-172-31-37-139 docker]# docker images
REPOSITORY TAG IMAGE ID CREATED SIZE
my-php-app latest 5cbe2eef3502 40 minutes ago 499MB
- Créér votre repository sur Elastic Container Registry
[admin@ip-172-31-37-139 ~]$ aws ecr create-repository --repository-name my-php-app
- Connecter Docker à Elastic Container Registry
[admin@ip-172-31-37-139 ~]$ aws ecr get-login-password --region us-east-2 | sudo docker login --username AWS --password-stdin your_aws_ID.dkr.ecr.us-east-2.amazonaws.com
- Pousser votre image sur Elastic Container Registry
[admin@ip-172-31-37-139 ~]$ sudo docker tag my-php-app:latest 978105985410.dkr.ecr.us-east-2.amazonaws.com/my-php-app:latest
[admin@ip-172-31-37-139 ~]$ sudo docker push your_aws_ID.dkr.ecr.us-east-2.amazonaws.com/my-php-app:latest
- Ensuite vous crééz un service qui utilisera votre image pour faire touner votre application