Ele deve fazer parte do cli, aqui está a página de documento de implantação vuejs.org/v2/guide/deployment.html Dependendo da versão que você possui, do modelo usado, provavelmente será um pouco diferente. Mas você deve especificar que está fazendo uma construção de produção como nos documentos.
Swimburger
2
Eu uso 2.2.1 vue. Eu vejo a documentação, mas não há informações sobre implantação. Eu não estou usando nodejs no hoster. Então, quando eu iniciá-lo em localhost funciona, mas quando eu baixar todos os arquivos para hoster, há nada na página
artem0071
8
Quando você faz uma compilação, provavelmente compilará todos os arquivos (html, css, js) em uma pasta / dist. Essa pasta dist deve ser a raiz do seu aplicativo na sua hospedagem. (Eu não usar vue2 ainda, mas eu aposto que ele vai estar lá)
Swimburger
Hey guys Eu tive esse mesmo prov na semana passada e escreveu smth-se se isso ajuda ninguém: medium.com/@seenickcode/...
seenickcode
Eu tenho carregado os arquivos da pasta dist de cpanel, mas está mostrando apenas em branco
Fayaz
Respostas:
171
Eu acho que você criou seu projeto assim:
vue init webpack myproject
Bem, agora você pode correr
npm run build
Copie index.html e / dist / folder no diretório raiz do site. Feito.
Não há necessidade de executar npm startou algo assim?
nu Everest
@nueverest, se você acabou de criar seu projeto vue init webpack myproject, verá mais instruções em seu console: cd myproject, npm install. Depois que npm installtodos os pacotes são baixados e o vue é capaz de compilar com o npm run devservidor de desenvolvimento + recarga a quente ou com npm run builda criação de um pacote configurável.
Egor Stambakio
Isso não parece funcionar com o roteador vue ... Estou fazendo algo errado?
Andy Hayden
1
@AndyHayden uma verificação do AWS S3 se 1) índice e documento de erro === index.html; 2) políticas são definidas para site estático ; 3) sua pasta build.jsestá dentro distdo s3 e index.htmlestá na raiz.
Egor Stambakio
9
a resposta deve ser "o conteúdo da distpasta é tudo o que você precisa. Você não precisa copiar, /index.htmlmas apenas index.htmla distpasta é necessária. Além disso, antes de executar, npm run buildvocê deve configurar seu caminho de produção config/index.js".
David天宇Wong
24
Se você criou seu projeto usando:
vue init webpack myproject
Você precisaria configurá-lo NODE_ENVpara produção e execução, porque o projeto possui um web pack configurado para desenvolvimento e produção:
NODE_ENV=production npm run build
Copie o dist/diretório para o diretório raiz do site.
Se você estiver implantando com o Docker, precisará de um servidor expresso, servindo o dist/diretório.
Dockerfile
FROM node:carbon
RUN mkdir -p /usr/src/app
WORKDIR /usr/src/app
ADD . /usr/src/app
RUN npm install
ENV NODE_ENV=production
RUN npm run build
# Remove unused directories
RUN rm -rf ./src
RUN rm -rf ./build
# Port to expose
EXPOSE 8080
CMD [ "npm", "start" ]
você expõe esse contêiner para o exterior ou usa o nginx ou o apache como proxy?
Hakim
Sim, você pode usar o Apache ou Nginx como proxy, a porta 80
Akinjide
paste.ubuntu.com/p/dryhSwnYh5 WORKDIR / usr / src / app pode ser WORKDIR / app? também é necessário o CMD ["http-server", "dist"] para servir via servidor http? em vez de CMD ["npm", "start"]
LOG_TAG 26/07/19
Versão: webpack 3.12.0 Tempo: 16548ms Nomes dos fragmentos dos pedaços de tamanho de ativo build.js 2,15 MB 0 [emitido] [grande] main build.js.map 9,74 MB 0 [emitido] main - Isso surge após a execução do cmd acima no projeto pasta - você pode me guiar através do próximo passo para entrar na vida? -
Certifique-se de alterar a compilação: {..... assetsPublicPath: './', que pontilha antes da barra ser importante. Mas também existe um assetsPublinPath no objeto dev nesse arquivo, portanto, altere o correto.
21918 Shane G
Versão: webpack 3.12.0 Tempo: 16548ms Nomes dos fragmentos dos pedaços de tamanho de ativo build.js 2,15 MB 0 [emitido] [grande] main build.js.map 9,74 MB 0 [emitido] main - Isso surge após a execução do cmd acima no projeto pasta - você pode me guiar através do próximo passo para entrar na vida? -
Hamendra Sunthwal
2
Os comandos para quais códigos específicos executar estão listados dentro do arquivo package.json em scripts. Aqui está um exemplo meu:
Uma maneira de fazer isso sem usar o VUE-CLI é agrupar todos os arquivos de script em um arquivo js fat e, em seguida, referenciar esse arquivo javascript grande e gordo no arquivo de modelo principal.
Prefiro usar o webpack como empacotador e criar um webpack.conig.js no diretório raiz do projeto. Todas as configurações, como ponto de entrada, arquivo de saída, carregadores, etc. são todas armazenadas nesse arquivo de configuração. Depois disso, adiciono um script no arquivo package.json que usa o arquivo webpack.config.js para configurações do webpack e começo a assistir arquivos e crio um arquivo agrupado Js no local mencionado no arquivo webpack.config.js.
Se você estiver usando o Vue CLI junto com uma estrutura de back-end que lida com ativos estáticos como parte de sua implantação, tudo o que você precisa fazer é garantir que o Vue CLI gere os arquivos criados no local correto e siga as instruções de implantação da estrutura de back-end. .
Se você estiver desenvolvendo seu aplicativo de front-end separadamente do seu back-end - ou seja, seu back-end expõe uma API para conversar com ele, ele é essencialmente um aplicativo estático. Você pode implantar o conteúdo incorporado no diretório dist em qualquer servidor de arquivos estático, mas certifique-se de definir o baseUrl correto
basta enviar a pasta dist para o seu ftp e pronto? e como acessar o aplicativo Vue no servidor?
Hamendra Sunthwal
0
ISTO É PARA IMPLANTAR PARA UMA PASTA PERSONALIZADA (se você quisesse que seu aplicativo não estivesse na raiz, por exemplo, URL / myApp /) - procurei por muito tempo para encontrar esta resposta ... espero que ajude alguém.
Obtenha a CLI do VUE em https://cli.vuejs.org/guide/ e use a construção da interface do usuário para facilitar. Em seguida, na configuração, você pode alterar o caminho público para / o que quer / e vincular ao URL / o que quer que seja.
A documentação do vue fornece muitas informações sobre como você pode implantar em diferentes provedores de host.
npm run build
Você pode encontrar isso no arquivo json do pacote. seção de scripts. Ele fornece scripts para teste e desenvolvimento e construção para produção.
Você pode usar serviços como o netlify, que agrupará seu projeto, vinculando seu repositório do projeto ao github. Ele também fornece informações sobre como implantar em outros sites, como o heroku.
O Vue CLI> = 3 usa o mesmo binário do vue, substituindo o Vue CLI 2 (vue-cli). Se você ainda precisar da funcionalidade legada do vue init, poderá instalar uma ponte global:
Vue Init Globalmente
npm install -g @vue/cli-init
O vue init agora funciona exatamente da mesma forma que [email protected]
Se você deseja criar e enviar para o servidor remoto, pode usar o cli-service ( https://cli.vuejs.org/guide/cli-service.html ), pode criar tarefas para servir, criar e uma para implantar com alguns plugins específicos comovue-cli-plugin-s3-deploy
Respostas:
Eu acho que você criou seu projeto assim:
Bem, agora você pode correr
Copie index.html e / dist / folder no diretório raiz do site. Feito.
fonte
npm start
ou algo assim?vue init webpack myproject
, verá mais instruções em seu console:cd myproject
,npm install
. Depois quenpm install
todos os pacotes são baixados e o vue é capaz de compilar com onpm run dev
servidor de desenvolvimento + recarga a quente ou comnpm run build
a criação de um pacote configurável.build.js
está dentrodist
do s3 eindex.html
está na raiz.dist
pasta é tudo o que você precisa. Você não precisa copiar,/index.html
mas apenasindex.html
adist
pasta é necessária. Além disso, antes de executar,npm run build
você deve configurar seu caminho de produçãoconfig/index.js
".Se você criou seu projeto usando:
Você precisaria configurá-lo
NODE_ENV
para produção e execução, porque o projeto possui um web pack configurado para desenvolvimento e produção:Copie o
dist/
diretório para o diretório raiz do site.Se você estiver implantando com o Docker, precisará de um servidor expresso, servindo o
dist/
diretório.Dockerfile
fonte
no seu terminal
e você hospeda a pasta dist. para mais, veja este vídeo
fonte
vue-cli
Se você tiver problemas com o seu caminho, talvez você precisa mudar a
assetPublicPath
suaconfig/index.js
arquivo para o seu sub-diretório:http://vuejs-templates.github.io/webpack/backend.html
fonte
Os comandos para quais códigos específicos executar estão listados dentro do arquivo package.json em scripts. Aqui está um exemplo meu:
Se você deseja executar seu site localmente, pode testá-lo com
Se você deseja preparar seu site para produção, você usaria
Este comando irá gerar uma pasta dist que possui uma versão compactada do seu site.
fonte
Para implantar seu aplicativo no ambiente prod, adicione
em seus scripts no arquivo package.json.
Abra seu main.js e adicione
logo após suas importações. Em seguida, abra seu CLI na pasta do projeto e execute este comando
Isso criará uma pasta dist no diretório do projeto. Você poderá fazer o upload dessa pasta dist no seu host e seu site estará ativo
fonte
Este comando é para iniciar o servidor de desenvolvimento:
Onde este comando é para a construção da produção:
Certifique-se de procurar e acessar a pasta gerada chamada 'dist'.
Em seguida, comece a enviar todos esses arquivos para o seu servidor.
fonte
Uma maneira de fazer isso sem usar o VUE-CLI é agrupar todos os arquivos de script em um arquivo js fat e, em seguida, referenciar esse arquivo javascript grande e gordo no arquivo de modelo principal.
Prefiro usar o webpack como empacotador e criar um webpack.conig.js no diretório raiz do projeto. Todas as configurações, como ponto de entrada, arquivo de saída, carregadores, etc. são todas armazenadas nesse arquivo de configuração. Depois disso, adiciono um script no arquivo package.json que usa o arquivo webpack.config.js para configurações do webpack e começo a assistir arquivos e crio um arquivo agrupado Js no local mencionado no arquivo webpack.config.js.
fonte
Eu acho que você pode usar vue-cli
Se você estiver usando o Vue CLI junto com uma estrutura de back-end que lida com ativos estáticos como parte de sua implantação, tudo o que você precisa fazer é garantir que o Vue CLI gere os arquivos criados no local correto e siga as instruções de implantação da estrutura de back-end. .
Se você estiver desenvolvendo seu aplicativo de front-end separadamente do seu back-end - ou seja, seu back-end expõe uma API para conversar com ele, ele é essencialmente um aplicativo estático. Você pode implantar o conteúdo incorporado no diretório dist em qualquer servidor de arquivos estático, mas certifique-se de definir o baseUrl correto
fonte
npm run build - isso aumentará e diminuirá os códigos
salve a pasta index.html e dist no diretório raiz do seu site.
serviço de hospedagem gratuito no qual você possa estar interessado - hospedagem Firebase.
fonte
se você usou o vue-cli e o webpack ao criar seu projeto.
você pode usar apenas
O npm executa o comando build na linha de comando e cria uma pasta dist no seu projeto. Basta enviar o conteúdo desta pasta para o seu ftp e pronto.
fonte
ISTO É PARA IMPLANTAR PARA UMA PASTA PERSONALIZADA (se você quisesse que seu aplicativo não estivesse na raiz, por exemplo, URL / myApp /) - procurei por muito tempo para encontrar esta resposta ... espero que ajude alguém.
Obtenha a CLI do VUE em https://cli.vuejs.org/guide/ e use a construção da interface do usuário para facilitar. Em seguida, na configuração, você pode alterar o caminho público para / o que quer / e vincular ao URL / o que quer que seja.
Confira este vídeo que explica como criar um aplicativo vue usando a CLI se precisar de mais ajuda: https://www.youtube.com/watch?v=Wy9q22isx3U
fonte
A documentação do vue fornece muitas informações sobre como você pode implantar em diferentes provedores de host.
Você pode encontrar isso no arquivo json do pacote. seção de scripts. Ele fornece scripts para teste e desenvolvimento e construção para produção.
Você pode usar serviços como o netlify, que agrupará seu projeto, vinculando seu repositório do projeto ao github. Ele também fornece informações sobre como implantar em outros sites, como o heroku.
Você pode encontrar mais detalhes sobre isso aqui
fonte
Primeiro instale o Vue Cli globalmente
Para criar um novo projeto, execute:
executar vue
O Vue CLI> = 3 usa o mesmo binário do vue, substituindo o Vue CLI 2 (vue-cli). Se você ainda precisar da funcionalidade legada do vue init, poderá instalar uma ponte global:
Vue Init Globalmente
O vue init agora funciona exatamente da mesma forma que [email protected]
Vue Create App
Executar servidor de desenvolvedor
fonte
Se você deseja criar e enviar para o servidor remoto, pode usar o cli-service ( https://cli.vuejs.org/guide/cli-service.html ), pode criar tarefas para servir, criar e uma para implantar com alguns plugins específicos como
vue-cli-plugin-s3-deploy
fonte