Porblem установка Docker и запуск скрипта ./login в Ubuntu 18.04 - PullRequest
0 голосов
/ 19 апреля 2020

У меня есть работа с моим университетом. Нам нужно установить Docker, смонтировать базу данных и подключиться к localhost: 8065 и отредактировать веб-страницу.

Я пытался с Windows, все работает, но когда я запускаю сервер, я не могу подключиться к localhost: 8065 (учитель сказал нам попробовать порты с 8065 по 8069, но ни один не работал).

Некоторые студенты сказали мне, что Windows не работает, и они сделали это с VirtualBox, с образом UBuntu 18.04, поэтому я пробую это, и вот моя проблема:

https://docs.docker.com/engine/install/ubuntu/

Я следовал этим инструкциям, чтобы загрузить docker.

Обычно мы должны запустить скрипт входа, и контейнер будет создан, и мы войдем в Файл Dockerfile, но это происходит:

ubuntu@ubuntu:~/Downloads/20201-tp2-master$ sudo ./login.sh 
Création image inf1070 ...
Nécessite une connexion Internet (needs an internet connection)
Sending build context to Docker daemon  570.3MB
Step 1/21 : FROM ubuntu:18.04
 ---> 4e5021d210f6
Step 2/21 : LABEL maintainer="MY TEACHERS EMAIL"
error creating aufs mount to /var/lib/docker/aufs/mnt/d0e56f35bb759cb43ad53d356f4e6c51129d68f696f9ea1c6c88a795b0b30562-init: mount target=/var/lib/docker/aufs/mnt/d0e56f35bb759cb43ad53d356f4e6c51129d68f696f9ea1c6c88a795b0b30562-init data=br:/var/lib/docker/aufs/diff/d0e56f35bb759cb43ad53d356f4e6c51129d68f696f9ea1c6c88a795b0b30562-init=rw:/var/lib/docker/aufs/diff/133c0c8db93c45a9461f4da101ae4cb99da7ff1a9d9194288494157996f2957f=ro+wh:/var/lib/docker/aufs/diff/f4f6b2db5a1ed474ced05649cac9ae94c3b8edafb616b046dd55c9a4612f31b1=ro+wh:/var/lib/docker/aufs/diff/81b03059015410e5663fa3a43848ec569de143bc0173101ee3015bcdd40a059d=ro+wh:/var/lib/docker/aufs/diff/9ecd90524baa2adb4e3615ae73b2a57baab55606ae7b2ae81e8e38b0e4462a2c=ro+wh,dio,xino=/dev/shm/aufs.xino: invalid argument
creation container .. 
Unable to find image 'inf1070:tp' locally
Error response from daemon: pull access denied for inf1070, repository does not exist or may require 'docker login': denied: requested access to the resource is denied
démarrage du container ...
Error response from daemon: No such container: inf1070tp
Error: failed to start containers: inf1070tp
Impossible de se connecter (we cant connect)
Vérifier que le container inf1070tp est démarré (verify that the container is started)
ubuntu@ubuntu:~/Downloads/20201-tp2-master$ 

Вот мой сценарий входа:

ubuntu@ubuntu:~/Downloads/20201-tp2-master$ cat login.sh 
#!/bin/bash

# script de creation et demarrage de container (script for the creation and the start of the container)
# specialement conçu pour les lab du cours INF1070 (made for our informatic course)
# nom image (image name)
imgname="inf1070:tp"
dockerfilename="Dockerfile"
#nom container (container name)
contname="inf1070tp"
# dossier donner dans le container (mount point)
datadir="/inf1070"
#dossier donnees sur machine locale 
#datasrc=`pwd`/../
datasrc=`pwd`/

# Créer image si elle n'existe pas (create the image if it doesnt exists)

if [[ "$(docker images -q $imgname 2> /dev/null)" == "" ]]; then
  # Image n'existe pas
  echo "Création image inf1070 ..." && \
  echo "Nécessite une connexion Internet" &&\
  docker build -t "$imgname" -f "$dockerfilename" . && \
  echo "Image $imgname cree avec succes"
fi

# Créer container si n'existe pas  (create container if it doesnt exists)

if [[ "$(docker ps -aq -f name=$contname$ 2>/dev/null)" == "" ]]; then
  #
  # container n'existe pas
  echo "creation container .. " && \
  docker create -it --mount src="$datasrc",target="$datadir",type=bind \
    -p 8065-8069:8069 -p 3080-3085:80 -p 3086-3089:8080 --name "$contname" "$imgname" && \
  echo "contenaire $contname créé" 
else
  echo "container $contname est déjà demarré ..."
fi

# démarrage du container (start container)

if [[ "$(docker ps -q -f name=$contname$ 2>/dev/null)" == "" ]]; then
    #
    echo "démarrage du container ..." &&\
    docker container start  "$contname" && \
    echo "container $contname  démarré"
fi

# connexion sur le contenair (connect to the container)

if [[ "$(docker ps -q -f name=$contname$ 2>/dev/null)" != "" ]]; then
    echo "connexion au contenair ..." &&\
    echo " le dossier $datasrc sera accessible " &&\
    echo "dans le dossier $datadir du container " && \
    echo "pour se deconnecter, tapez la commande: exit"&& \
    #docker exec -it "$contname" /bin/bash
    docker container  exec -it -u etudiant "$contname" /bin/bash
else
   echo "Impossible de se connecter"
   echo "Vérifier que le container $contname est démarré"
fi


# docker run -it --mount src=`pwd`/../,target=/inf1070,type=bind \
# -p 127.0.0.1:8069:8069 --name inf1070lab inf1070:lab

# docker inspect -f {{.State.Running}} $CONTAINER_ID

Когда я вижу, это то, что находится в папке:

ubuntu@ubuntu:~/Downloads/20201-tp2-master$ ls
Dockerfile  listePackages.txt  login.sh  odoo  odoo.conf  rapport-tp2.md  README.md  solution-tp2.sh  uqam.png

Мы должны (это то, что другие студенты сказали мне, и то, что я сделал с моим Windows docker), установить Docker и запустить скрипт входа в систему, после следующих шагов, которые я могу обработать. Но я не могу запустить скрипт и Idk почему: (

В веб-сайте установки docker говорится, что для проверки docker мы можем запустить образ hello-world, но когда я это делаю, я есть эта ошибка:

ubuntu@ubuntu:~/Downloads/20201-tp2-master$ sudo docker run hello-world
docker: Error response from daemon: error creating aufs mount to /var/lib/docker/aufs/mnt/b382269982f3fc77413a22619f77c98cb925da65f441cdf1fbf05c7a02eaacce-init: mount target=/var/lib/docker/aufs/mnt/b382269982f3fc77413a22619f77c98cb925da65f441cdf1fbf05c7a02eaacce-init data=br:/var/lib/docker/aufs/diff/b382269982f3fc77413a22619f77c98cb925da65f441cdf1fbf05c7a02eaacce-init=rw:/var/lib/docker/aufs/diff/9150cce20d269c7ec98d7a94d725f2ac09b2a8af6c0b504eb993194d26a0d7f1=ro+wh,dio,xino=/dev/shm/aufs.xino: invalid argument.
See 'docker run --help'.

Можете ли вы, ребята, пожалуйста, помогите мне:)

...