이번에는 nextcloud를 구축해서 데이터를 따로 운영할거다.
[root@samba _data]# docker run -i -t --name nextcloud ubuntu:20.04
[root@samba _data]# docker rm nextcloud
[root@samba _data]# docker create -i -t --name nextcloud -p 80:80 ubuntu:20.04
Error response from daemon: Conflict. The container name "/nextcloud" is already in use by container "62137f4160d651bf975f46d9d3b4ea49ce507f685589e74fd63e556b1c282a16". You have to remove (or rename) that container to be able to reuse that name.
[root@samba _data]# docker start nextcloud
[root@samba _data]# docker attach nextcloud
[root@samba _data]# docker create -i -t --name nextcloud -p 80:80 ubuntu:20.04
e91c2146c61e6b76a6aadbfa1bfbc1a29088d402d49d12c7b14be9e5c46cdf73
[root@samba _data]# docker start nextcloud ==>오류나면
Error response from daemon: driver failed programming external connectivity on endpoint nextcloud (6234f071ed01e2c51858ccbdf555b38be56e8d332ac1edf45a7ccbc434f3efd0): Error starting userland proxy: listen tcp4 0.0.0.0:80: bind: address already in use
Error: failed to start containers: nextcloud
[root@samba _data]# systemctl stop httpd ==>stop 해주고
[root@samba _data]# docker start nextcloud
^[[Anextcloud
[root@samba _data]# docker attach nextcloud
root@e91c2146c61e:/# apt-get update -y && apt-get upgrade -y
root@893c736f6187:/# apt update
root@893c736f6187:/# apt install apache2
6 70
root@893c736f6187:/# service apache2 start
root@893c736f6187:/# service apache2 status
* apache2 is running
ctrl+shift+p+q 하고 ifconfig 한다음 docker 아이피 172.17.0.1
파이어폭스에 172.17.0.1 치면 사이트 나온다.

root@893c736f6187:/# apt install php-imagick libapache2-mod-php7.4 php7.4-common php7.4-mysql php7.4-fpm php7.4-gd php7.4-json php7.4-curl php7.4-zip php7.4-xml php7.4-mbstring php7.4-bz2 php7.4-intl php7.4-bcmath php7.4-gmp
mariaDB깔기
1) Maria DB설치
apt install mariadb-server -y
2) Maria DB 시작 및 적용
root@e91c2146c61e:/# service mysql start
4) Maria DB 설정
mysql_secure_installation
이때 몇가지 질문을 입력한다. Enter current password for root (enter for none): 엔터 눌러서 스킵
Set root password? [Y/n]`Y`
Remove anonymous users? [Y/n]`Y`
Disallow root login remotely? [Y/n]`Y`
Remove test database and access to it? [Y/n]`Y`
Reload privilege tables now? [Y/n]`Y`
5) DB 생성
mysql -u root -p
create database nextcloud;
create user nextclouduser@localhost identified by '1111';
grant all privileges on nextcloud_db.*to nextclouduser@localhost identified by '1111';
flush privileges;
EXIT;
password입력 부분에 원하는 비밀번호로 입력한다..
7. NextCloud 다운
1) git 다운로드
apt install curl git
2) composer 다운로드
curl -sS https://getcomposer.org/installer |sudo php -- --install-dir=/usr/local/bin --filename=composer
3) nextCloud 다운로드
cd /var/www/html
git clone --branch stable20 https://github.com/nextcloud/server.git nextcloud
cd /var/www/html/nextcloud
composer install
git submodule update --init
4) 설치 폴더 권한 주기
chown -R www-data:www-data /var/www/html/nextcloud/
chmod -R 755 /var/www/html/nextcloud/
5) apache 설정
vi /etc/apache2/sites-available/nextcloud.conf
<VirtualHost *:80>
ServerAdmin 이메일주소
DocumentRoot /var/www/html/nextcloud/
ServerName [ServerIP]/nextcloud
ServerAlias [ServerIP]/nextcloud
Alias /nextcloud "/var/www/html/nextcloud/"
<Directory /var/www/html/nextcloud/>
Options +FollowSymlinks
AllowOverride All Require all granted
<IfModule mod_dav.c>
Dav off
</IfModule>
SetEnv HOME /var/www/html/nextcloud
SetEnv HTTP_HOME /var/www/html/nextcloud
</Directory>
ErrorLog ${APACHE_LOG_DIR}/error.log
CustomLog ${APACHE_LOG_DIR}/access.log combined
</VirtualHost>
[ServerIP]에 사용자의 서버 IP 주소를 입력한다.
6) 모듈 활성화
a2ensite nextcloud.conf
a2enmod rewrite
a2enmod headers
a2enmod env
a2enmod dir
a2enmod mime
7) apache2 재시작
systemctl restart apache2.service
8. 마무리 설정
1) 관리자 계정 만들기
cd /
docker save -o nextcloud.tar nextcloud:first ==>파일명은 nextcloud.tar
뭐가 뭔지...;;;;




ls 하고 나오는 nextcloud.tar 복사
docker load -i nextcloud.tar ==> 이미지 만들어진다.
rm -rf nextcloud.tar
docker images
docker create -i -t --name nextcloud -p 80:80 nextcloud:first
docker ps -a
nextcloud라는 컨테이너가 만들어짐
docker start nextcloud nextcloud
docker attach nextcloud
service apache2 start
==>다 날렸는데 인터넷 그대로 켜짐. 살아남
설치 자꾸 안될때 오류 해결
apt install sudo
'네트워크 수업 > Docker' 카테고리의 다른 글
zfw 23.05.15 (0) | 2023.05.15 |
---|---|
Docker - NSF 서버구축 23.05.12 (0) | 2023.05.12 |
CLI(Command-line Interface) 23.05.11 (0) | 2023.05.11 |
[실습] IOS_FW GNS3 23.05.10 (0) | 2023.05.10 |
방화벽 23.05.10 (0) | 2023.05.10 |
댓글