[RUBY] [EC2 / Vue / Rails] EC2-Bereitstellungsverfahren für Vue + Rails

Inhaltsverzeichnis

Ruby-Installation

◆ Installieren Sie rbenv / ruby-build

$ git clone git://github.com/rbenv/rbenv.git ~/.rbenv
$ echo 'export PATH="$HOME/.rbenv/bin:$PATH"' >> ~/.bashrc
$ echo 'eval "$(rbenv init -)"' >> ~/.bashrc
$ source ~/.bashrc
$ git clone git://github.com/rbenv/ruby-build.git /tmp/ruby-build
$ cd /tmp/ruby-build
$ sudo ./install.sh

◆ Ruby-Versionsspezifikation

$ rbenv install -l
$ sudo yum -y install gcc-c++ glibc-headers openssl-devel readline libyaml-devel readline-devel zlib zlib-devel libffi-devel libxml2 libxslt libxml2-devel libxslt-devel sqlite-devel
$ rbenv install 2.7.1
$ rbenv rehash
$ rbenv global 2.7.1
$ ruby -v

◆ Installation des Bundlers / der Schienen

$ rbenv rehash
$ gem install bundler
$ bundler -v
$ gem install rails -v 6.0.2.1
$ rails -v

Node.js Installation

$ git clone https://github.com/creationix/nvm.git ~/.nvm
$ source ~/.nvm/nvm.sh
$ vim .bash_profile
###Nachtrag
if [ -f ~/.nvm/nvm.sh ]; then
        . ~/.nvm/nvm.sh
fi
$ nvm install 12.14.0
$ node --version
$ npm --version
$ npm install yarn -g
$ yarn --version

Vue.js Installation

$ rails webpacker:install:vue
$ npm install vue-router
$ npm install -y vuex
$ npm install axios --save
$ npm install vee-validate --save
$ npm install sass-loader node-sass --save-dev
$ npm install --save-dev core-js@3
$ npm install --save vuex-persistedstate

Fehlerbehandlung

◆ Sassc-Fehler

//Ansatz
$ yum update & yum install gcc gcc-c++ make

◆ sqlite3-Fehler

$ wget https://www.sqlite.org/2019/sqlite-autoconf-3300100.tar.gz
$ tar xzvf sqlite-autoconf-3300100.tar.gz
$ cd sqlite-autoconf-3300100/
$ ./configure --prefix=/opt/sqlite/sqlite3
$ make
$ sudo yum install sqlite-devel
$ sudo make install
$ /opt/sqlite/sqlite3/bin/sqlite3 --version
$ gem install sqlite3 -- --with-sqlite3-include=/opt/sqlite/sqlite3/include --with-sqlite3-lib=/opt/sqlite/sqlite3/lib

◆ SQLite (3.7.17) is too old

//Ansatz
$ wget https://kojipkgs.fedoraproject.org//packages/sqlite/3.8.11/1.fc21/x86_64/sqlite-devel-3.8.11-1.fc21.x86_64.rpm
$ wget https://kojipkgs.fedoraproject.org//packages/sqlite/3.8.11/1.fc21/x86_64/sqlite-3.8.11-1.fc21.x86_64.rpm
$ sudo yum install sqlite-3.8.11-1.fc21.x86_64.rpm sqlite-devel-3.8.11-1.fc21.x86_64.rpm
$ yum list | grep sqlite

◆ MySQL2-Fehler

$ sudo yum install mysql-devel
$ bundle config --local build.mysql2 "--with-ldflags=-L/usr/local/opt/openssl/lib"
$ bundle install

◆ Fehler bei den Entwicklungstools

Ansatz
$ yum -y groupinstall "Development Tools"
$ yum -y install gcc-c++ glibc-headers openssl-devel readline libyaml-devel zlib zlib-devel libffi-devel libxml2 libxslt libxml2-devel libxslt-devel mysql-devel readline-devel

◆ ImageMagick-Fehler

Ansatz
$ yum -y install ImageMagick ImageMagick-devel
//gcc downgrade
$ yum install gcc44
$ alternatives --set gcc /usr/bin/gcc44

Verweise

Recommended Posts

[EC2 / Vue / Rails] EC2-Bereitstellungsverfahren für Vue + Rails
Rails Heroku-Bereitstellungsverfahren
Rails auf EC2 starten (manuelle Bereitstellung)
Einfache Bereitstellung mit Capistrano + AWS (EC2) + Rails
[Rails] Verfahren zum Verknüpfen von Datenbanken mit Ruby On Rails
Rezept für die Bereitstellung von Rails-Apps unter AWS EC2
[Für Anfänger] Verfahren zum Erstellen eines Controllers mithilfe von Schienen
[Rails] Nginx, Puma-Umgebungsbereitstellung und Serverstudie [AWS EC2]
Starten Sie EC2 Rails
Stellen Sie RAILS auf EC2 bereit
[Schienen] Heroku-Bereitstellungsablauf
Schienen, RSpec-Installationsverfahren
[Circle CI] Verfahren für die automatische Bereitstellung beim Push auf GitHub
[Verfahren 1 für Anfänger] Ruby on Rails: Aufbau einer Entwicklungsumgebung
Ich habe versucht, die automatische Bereitstellung mit CircleCI + Capistrano + AWS (EC2) + Rails durchzuführen
Docker-Compose-Befehlsliste (für Rails)
[Vue Rails] "Hallo Vue!" Wird mit Vue + Rails angezeigt
Vorbereitung für die Entwicklung mit Rails
(Für Anfänger) [Rails] Installieren Sie das Gerät
[Rails] EC-Site-Cart-Funktion
Verfahren zum Veröffentlichen einer Anwendung mit AWS (7) Automatische Bereitstellung durch Capistrano
Verfahren zum Erstellen einer Rails-Anwendungsentwicklungsumgebung mit Docker [Rails, MySQL, Docker]
Konstruktionsverfahren für die Docker-Umgebung "Rails 6 x MySQL 8" für die gemeinsame Nutzung mit Teams